SlideShare a Scribd company logo
1 of 7
Living Lab
e-SUAP
Data Access (Server Side)
Modeling
Data and entity modeling rely completely on Visual Studio Standard entity framework visual modeling
plug-in. This part of the framework is still in evolution and will cover, hereafter, all the features of Entity
Framework 5 and 6, like inheritance, polyphormism, complex relationships etc.
From EDMX logical and physical model can be derived SQL DDL for generating the database layer, server
side entities for extracting and storing domain information, return to clients through web services or
fast and reliable JSON based web API controllers DTO's for distributed data management.
Code Generation
Domain entities dedicated code can be generated both on the server and client side. On the server side
we'll provide you with a C# oriented T4 template for generating:
 an ObjectContext or DBContext derived class with all the stuff necessary for dealing with
Entity Framework contexts;
 Repository pattern and IPoco classes for every entity provided through the EDMX data
model
Repository Pattern
The repository pattern is implemented through a particular contract. For example the address entity:
Generates, thanks to the T4 template, the following code parts:
 Partial repository generic interface for entity Address:
o public partial interface IAddressRepository : IRepository<Address> { }
 The repository implementation for entity Address:
o public partial class EntityAddressRepository :
CodeArchitects.Data.Entity.Repository<Address>, IAddressRepository
 And the Entity Ipoco object:
o public partial class Address : IObjectWithChangeTracker,
INotifyPropertyChanged
 Primitive properties
 Complex properties
 Navigation properties
 ChangeTracking
 Association Fixup
Entity typical usage patterns
Unit container registration:
Retrieving repository objects through unity container and retrieve data:
Saving data:

More Related Content

What's hot

What's hot (15)

Object-Relational Mapping and Dependency Injection
Object-Relational Mapping and Dependency InjectionObject-Relational Mapping and Dependency Injection
Object-Relational Mapping and Dependency Injection
 
Application layer assignments
Application layer assignmentsApplication layer assignments
Application layer assignments
 
Entity Framework Overview
Entity Framework OverviewEntity Framework Overview
Entity Framework Overview
 
What is hibernate?
What is hibernate?What is hibernate?
What is hibernate?
 
Advanced application architecture
Advanced application architectureAdvanced application architecture
Advanced application architecture
 
What is hibernate?
What is hibernate?What is hibernate?
What is hibernate?
 
Entity framework and how to use it
Entity framework and how to use itEntity framework and how to use it
Entity framework and how to use it
 
Entity Framework 4
Entity Framework 4Entity Framework 4
Entity Framework 4
 
Adaptive Architecture
Adaptive ArchitectureAdaptive Architecture
Adaptive Architecture
 
Ef code first
Ef code firstEf code first
Ef code first
 
Procurement Exchange - Our underlying technology
Procurement Exchange - Our underlying technologyProcurement Exchange - Our underlying technology
Procurement Exchange - Our underlying technology
 
Entity Framework - Object Services
Entity Framework -  Object ServicesEntity Framework -  Object Services
Entity Framework - Object Services
 
Lerman Vvs14 Ef Tips And Tricks
Lerman Vvs14  Ef Tips And TricksLerman Vvs14  Ef Tips And Tricks
Lerman Vvs14 Ef Tips And Tricks
 
Tactical DDD (just better OOP?) - PHPBenelux 2017
Tactical DDD (just better OOP?) - PHPBenelux 2017Tactical DDD (just better OOP?) - PHPBenelux 2017
Tactical DDD (just better OOP?) - PHPBenelux 2017
 
Oracle reports
Oracle reportsOracle reports
Oracle reports
 

Viewers also liked

Ranking nacional de Pokémon T.G.C. Old School
Ranking nacional de Pokémon T.G.C. Old School  Ranking nacional de Pokémon T.G.C. Old School
Ranking nacional de Pokémon T.G.C. Old School
Trainer PkMn
 
INDICAÇÕES DO VEREADOR RONALD
INDICAÇÕES DO VEREADOR RONALDINDICAÇÕES DO VEREADOR RONALD
INDICAÇÕES DO VEREADOR RONALD
Simone Santos
 
Como crear una base de datos
Como crear una base de datosComo crear una base de datos
Como crear una base de datos
daniaccess
 
Mapa Conceptual
Mapa ConceptualMapa Conceptual
Mapa Conceptual
lideska2
 
Normas para elaboracion de t. de g. lideska barrios
Normas para elaboracion de t. de g. lideska barriosNormas para elaboracion de t. de g. lideska barrios
Normas para elaboracion de t. de g. lideska barrios
lideska2
 
Paula su arez difución de la tegnología
Paula su arez difución de la tegnologíaPaula su arez difución de la tegnología
Paula su arez difución de la tegnología
PaulaSuarezDiaz0293
 
Difucion de la informacion
Difucion de la informacionDifucion de la informacion
Difucion de la informacion
lolis-puka
 

Viewers also liked (20)

Ranking nacional de Pokémon T.G.C. Old School
Ranking nacional de Pokémon T.G.C. Old School  Ranking nacional de Pokémon T.G.C. Old School
Ranking nacional de Pokémon T.G.C. Old School
 
Yongkang lufeng stainless steel products co.,ltd
Yongkang lufeng stainless steel products co.,ltdYongkang lufeng stainless steel products co.,ltd
Yongkang lufeng stainless steel products co.,ltd
 
Construïm presentacions
Construïm presentacions Construïm presentacions
Construïm presentacions
 
Barco
BarcoBarco
Barco
 
PROYECTO DE INVESTIGACIÓN
PROYECTO DE INVESTIGACIÓNPROYECTO DE INVESTIGACIÓN
PROYECTO DE INVESTIGACIÓN
 
Turtle
TurtleTurtle
Turtle
 
INDICAÇÕES DO VEREADOR RONALD
INDICAÇÕES DO VEREADOR RONALDINDICAÇÕES DO VEREADOR RONALD
INDICAÇÕES DO VEREADOR RONALD
 
Imposible
ImposibleImposible
Imposible
 
Como crear una base de datos
Como crear una base de datosComo crear una base de datos
Como crear una base de datos
 
reCreeaza-te funshop @ Excelez.ro
reCreeaza-te funshop @ Excelez.roreCreeaza-te funshop @ Excelez.ro
reCreeaza-te funshop @ Excelez.ro
 
Mis 10 consejos para utilizar RSS
Mis 10 consejos para utilizar RSS Mis 10 consejos para utilizar RSS
Mis 10 consejos para utilizar RSS
 
Mapa Conceptual
Mapa ConceptualMapa Conceptual
Mapa Conceptual
 
e-SUAP - Ochestration building block (italian)
e-SUAP - Ochestration building block (italian)e-SUAP - Ochestration building block (italian)
e-SUAP - Ochestration building block (italian)
 
Normas para elaboracion de t. de g. lideska barrios
Normas para elaboracion de t. de g. lideska barriosNormas para elaboracion de t. de g. lideska barrios
Normas para elaboracion de t. de g. lideska barrios
 
Povesti cu impact @ roPot
Povesti cu impact @ roPotPovesti cu impact @ roPot
Povesti cu impact @ roPot
 
Paula su arez difución de la tegnología
Paula su arez difución de la tegnologíaPaula su arez difución de la tegnología
Paula su arez difución de la tegnología
 
Internt
InterntInternt
Internt
 
Difucion de la informacion
Difucion de la informacionDifucion de la informacion
Difucion de la informacion
 
Windows 10 presentation
Windows 10 presentationWindows 10 presentation
Windows 10 presentation
 
Curso de Zotero
Curso de Zotero Curso de Zotero
Curso de Zotero
 

Similar to e-SUAP - Data access server side (English)

Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
Ali Taki
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?
ukdpe
 
J2 EEE SIDES
J2 EEE  SIDESJ2 EEE  SIDES
J2 EEE SIDES
bputhal
 
ADO.NET Entity Framework
ADO.NET Entity FrameworkADO.NET Entity Framework
ADO.NET Entity Framework
Doncho Minkov
 

Similar to e-SUAP - Data access server side (English) (20)

Entity framework
Entity frameworkEntity framework
Entity framework
 
Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)
 
Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)Building nTier Applications with Entity Framework Services (Part 1)
Building nTier Applications with Entity Framework Services (Part 1)
 
Entity Framework Overview
Entity Framework OverviewEntity Framework Overview
Entity Framework Overview
 
Entity Framework V1 and V2
Entity Framework V1 and V2Entity Framework V1 and V2
Entity Framework V1 and V2
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
 
J2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net WorkshopJ2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net Workshop
 
Building N Tier Applications With Entity Framework Services 2010
Building N Tier Applications With Entity Framework Services 2010Building N Tier Applications With Entity Framework Services 2010
Building N Tier Applications With Entity Framework Services 2010
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?
 
Microsoft Entity Framework
Microsoft Entity FrameworkMicrosoft Entity Framework
Microsoft Entity Framework
 
Entity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptxEntity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptx
 
Microsoft Data Access Technologies
Microsoft Data Access TechnologiesMicrosoft Data Access Technologies
Microsoft Data Access Technologies
 
J2 EEE SIDES
J2 EEE  SIDESJ2 EEE  SIDES
J2 EEE SIDES
 
70487.pdf
70487.pdf70487.pdf
70487.pdf
 
Asp.Net_ Developer Resume Remotely
Asp.Net_ Developer Resume RemotelyAsp.Net_ Developer Resume Remotely
Asp.Net_ Developer Resume Remotely
 
Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4
 
Elements of DDD with ASP.NET MVC & Entity Framework Code First
Elements of DDD with ASP.NET MVC & Entity Framework Code FirstElements of DDD with ASP.NET MVC & Entity Framework Code First
Elements of DDD with ASP.NET MVC & Entity Framework Code First
 
Chapter 6-Remoting
Chapter 6-RemotingChapter 6-Remoting
Chapter 6-Remoting
 
ADO.NET Entity Framework
ADO.NET Entity FrameworkADO.NET Entity Framework
ADO.NET Entity Framework
 
Visual studio
Visual studioVisual studio
Visual studio
 

More from Sabino Labarile

e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
Sabino Labarile
 

More from Sabino Labarile (20)

SUE AGILE - Presentazione della piattaforma
SUE AGILE - Presentazione della piattaforma SUE AGILE - Presentazione della piattaforma
SUE AGILE - Presentazione della piattaforma
 
Manuale utente SUE AGILE
Manuale utente SUE AGILEManuale utente SUE AGILE
Manuale utente SUE AGILE
 
SUE AGILE Framework (Italiano)
SUE AGILE Framework (Italiano)SUE AGILE Framework (Italiano)
SUE AGILE Framework (Italiano)
 
SUE AGILE Architettura (Italiano)
SUE AGILE Architettura (Italiano)SUE AGILE Architettura (Italiano)
SUE AGILE Architettura (Italiano)
 
SUE AGILE MVVM (English)
SUE AGILE MVVM (English)SUE AGILE MVVM (English)
SUE AGILE MVVM (English)
 
SUE AGILE MVVM (Italian)
SUE AGILE MVVM (Italian)SUE AGILE MVVM (Italian)
SUE AGILE MVVM (Italian)
 
SUE AGILE Framework (English)
SUE AGILE Framework (English)SUE AGILE Framework (English)
SUE AGILE Framework (English)
 
SUE AGILE Architecture (English)
SUE AGILE Architecture (English)SUE AGILE Architecture (English)
SUE AGILE Architecture (English)
 
SUE AGILE - GUIDA ALL'UTILIZZO DELLA PIATTAFORMA
SUE AGILE - GUIDA ALL'UTILIZZO DELLA PIATTAFORMASUE AGILE - GUIDA ALL'UTILIZZO DELLA PIATTAFORMA
SUE AGILE - GUIDA ALL'UTILIZZO DELLA PIATTAFORMA
 
e-suap - client technologies- english version
e-suap - client technologies- english versione-suap - client technologies- english version
e-suap - client technologies- english version
 
e-suap cloud computing- English version
e-suap cloud computing- English versione-suap cloud computing- English version
e-suap cloud computing- English version
 
e-SUAP - Ochestration building block (english)
e-SUAP - Ochestration building block (english)e-SUAP - Ochestration building block (english)
e-SUAP - Ochestration building block (english)
 
e-SUAP - Security - Windows azure access control list (english version)
e-SUAP - Security - Windows azure access control list (english version)e-SUAP - Security - Windows azure access control list (english version)
e-SUAP - Security - Windows azure access control list (english version)
 
e-SUAP - Security - Windows azure access control list (italian version)
e-SUAP - Security - Windows azure access control list (italian version)e-SUAP - Security - Windows azure access control list (italian version)
e-SUAP - Security - Windows azure access control list (italian version)
 
e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)e-SUAP - General software architecture (Italiano)
e-SUAP - General software architecture (Italiano)
 
E suap - tecnologie client
E suap - tecnologie client E suap - tecnologie client
E suap - tecnologie client
 
e-suap - general software architecture (English)
e-suap - general software architecture (English)e-suap - general software architecture (English)
e-suap - general software architecture (English)
 
e-SUAP - General software architecture (English)
e-SUAP - General software architecture  (English)e-SUAP - General software architecture  (English)
e-SUAP - General software architecture (English)
 
E suap - cloud computing (Italian)
E suap - cloud computing (Italian)E suap - cloud computing (Italian)
E suap - cloud computing (Italian)
 
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
 

Recently uploaded

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 

Recently uploaded (20)

WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
WSO2Con2024 - Simplified Integration: Unveiling the Latest Features in WSO2 L...
WSO2Con2024 - Simplified Integration: Unveiling the Latest Features in WSO2 L...WSO2Con2024 - Simplified Integration: Unveiling the Latest Features in WSO2 L...
WSO2Con2024 - Simplified Integration: Unveiling the Latest Features in WSO2 L...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration ToolingWSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration Tooling
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...
WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...
WSO2Con2024 - Facilitating Broadband Switching Services for UK Telecoms Provi...
 
WSO2Con2024 - Organization Management: The Revolution in B2B CIAM
WSO2Con2024 - Organization Management: The Revolution in B2B CIAMWSO2Con2024 - Organization Management: The Revolution in B2B CIAM
WSO2Con2024 - Organization Management: The Revolution in B2B CIAM
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdfAzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
 
WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next IntegrationWSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2Con2024 - Unleashing the Financial Potential of 13 Million People
WSO2Con2024 - Unleashing the Financial Potential of 13 Million PeopleWSO2Con2024 - Unleashing the Financial Potential of 13 Million People
WSO2Con2024 - Unleashing the Financial Potential of 13 Million People
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and ApplicationsWSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
 

e-SUAP - Data access server side (English)

  • 2. Modeling Data and entity modeling rely completely on Visual Studio Standard entity framework visual modeling plug-in. This part of the framework is still in evolution and will cover, hereafter, all the features of Entity Framework 5 and 6, like inheritance, polyphormism, complex relationships etc. From EDMX logical and physical model can be derived SQL DDL for generating the database layer, server side entities for extracting and storing domain information, return to clients through web services or fast and reliable JSON based web API controllers DTO's for distributed data management.
  • 3. Code Generation Domain entities dedicated code can be generated both on the server and client side. On the server side we'll provide you with a C# oriented T4 template for generating:  an ObjectContext or DBContext derived class with all the stuff necessary for dealing with Entity Framework contexts;  Repository pattern and IPoco classes for every entity provided through the EDMX data model Repository Pattern The repository pattern is implemented through a particular contract. For example the address entity:
  • 4. Generates, thanks to the T4 template, the following code parts:  Partial repository generic interface for entity Address: o public partial interface IAddressRepository : IRepository<Address> { }  The repository implementation for entity Address: o public partial class EntityAddressRepository : CodeArchitects.Data.Entity.Repository<Address>, IAddressRepository  And the Entity Ipoco object: o public partial class Address : IObjectWithChangeTracker, INotifyPropertyChanged  Primitive properties  Complex properties  Navigation properties  ChangeTracking  Association Fixup Entity typical usage patterns Unit container registration:
  • 5. Retrieving repository objects through unity container and retrieve data:
  • 6.