SlideShare une entreprise Scribd logo
1  sur  13
OData Protocol and WCF Data Services Morris Bahrami
What is OData Protocol? OData  (Open Data) Protocol is a Web protocol for querying and updating data. It is based on HTTP, AtomPub, JSON and XML.  It can be used to expose and access information from sources such as relational databases, file systems, content management systems or traditional Web sites.
OData Protocol   It can be used as a general purpose interface for exposing Create Retrieve Update Delete (CRUD) operations on a data model.  It performs the CRUD based on existing HTTP methods: Create – POST, Retrieve- GET, Update - PUT , Delete – DELTE.
What is REST? Representational State Transfer (REST) is a software architecture for stateless client-server communication. Conforming to the REST constraints is referred to as being "RESTful".  REST uses existing HTTP verbs such as GET, PUT, POST and DELETE.
REST and OData REST is an architecture style and design pattern. OData is a specific protocol implementing REST.
What is WCF Data Services? WCF Data Services expose and consume OData feeds.
WCF Programming Models From http://blogs.msdn.com/b/endpoint/archive/2010/01/04/wcf-data-services-ria-services-alignment-questions-and-answers.aspx
WCF Programming Models SOAP Services  - The original WCF . Best for method based interfaces, needing message based security, other channels in addition to HTTP, or hosting outside of IIS.  Workflow Services -Is  used for sending and receiving Windows Workflow Foundation (WF) messages. RIA Services –  Best for building Silverlight applications.
WCF Programming Models WebHttp Services  (WCF REST) –  Best for exposing method based HTTP services or building a RESTful service with full control over the URI format.  Data Services – Best when you are exposing your data model and associated logic through a RESTful interface. It includes a full implementation of the Open Data (OData) Protocol.
Exposing data as a OData feed Define the data model. WCF Data Services natively supports ADO.NET Entity Framework. You can use any data model that implements IQueryable and IUpdateable interfaces. Create the data service. It is a class that inherits from the DataServiceclass, with a type T that is the namespace-qualified name of the entity container.  Configure the data service.
Accessing data service resources In OData, you address any data exposed by the data model by using a URI.  http://server1/DS1.svc/Employees http://server1/DS1.svc/Employees(2) http://server1/DS1.svc/Employees(2)/FirstName/$value http://server1/DS1.svc/Employees?$filter=FirstNameeq ‘Tom’
Some query options
Query operators

Contenu connexe

En vedette

MS PPM Summit Chicago_Nov 2015
MS PPM Summit Chicago_Nov 2015MS PPM Summit Chicago_Nov 2015
MS PPM Summit Chicago_Nov 2015
Ludvic Baquie
 
Developing ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-axDeveloping ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-ax
Nicc Ngo
 
Business intelligence in microsoft dynamics ax
Business intelligence in microsoft dynamics axBusiness intelligence in microsoft dynamics ax
Business intelligence in microsoft dynamics ax
AlfaPeople US
 

En vedette (8)

OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
 
MS PPM Summit Chicago_Nov 2015
MS PPM Summit Chicago_Nov 2015MS PPM Summit Chicago_Nov 2015
MS PPM Summit Chicago_Nov 2015
 
Developing ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-axDeveloping ssrs-reports-for-dynamics-ax
Developing ssrs-reports-for-dynamics-ax
 
Data Warehouse approaches with Dynamics AX
Data Warehouse  approaches with Dynamics AXData Warehouse  approaches with Dynamics AX
Data Warehouse approaches with Dynamics AX
 
Dynamics Day 2013 AX 2012 Tips and Tricks 45 in 45
Dynamics Day 2013 AX 2012 Tips and Tricks 45 in 45Dynamics Day 2013 AX 2012 Tips and Tricks 45 in 45
Dynamics Day 2013 AX 2012 Tips and Tricks 45 in 45
 
Business intelligence in microsoft dynamics ax
Business intelligence in microsoft dynamics axBusiness intelligence in microsoft dynamics ax
Business intelligence in microsoft dynamics ax
 
Dynamics Day 2014: Microsoft Dynamics AX - Roadmap
Dynamics Day 2014: Microsoft Dynamics AX - RoadmapDynamics Day 2014: Microsoft Dynamics AX - Roadmap
Dynamics Day 2014: Microsoft Dynamics AX - Roadmap
 
Dynamics Day 2012: Dynamics AX Update and Roadmap
Dynamics Day 2012: Dynamics AX Update and RoadmapDynamics Day 2012: Dynamics AX Update and Roadmap
Dynamics Day 2012: Dynamics AX Update and Roadmap
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 

OData and WCF Data Services

  • 1. OData Protocol and WCF Data Services Morris Bahrami
  • 2. What is OData Protocol? OData (Open Data) Protocol is a Web protocol for querying and updating data. It is based on HTTP, AtomPub, JSON and XML. It can be used to expose and access information from sources such as relational databases, file systems, content management systems or traditional Web sites.
  • 3. OData Protocol It can be used as a general purpose interface for exposing Create Retrieve Update Delete (CRUD) operations on a data model. It performs the CRUD based on existing HTTP methods: Create – POST, Retrieve- GET, Update - PUT , Delete – DELTE.
  • 4. What is REST? Representational State Transfer (REST) is a software architecture for stateless client-server communication. Conforming to the REST constraints is referred to as being "RESTful". REST uses existing HTTP verbs such as GET, PUT, POST and DELETE.
  • 5. REST and OData REST is an architecture style and design pattern. OData is a specific protocol implementing REST.
  • 6. What is WCF Data Services? WCF Data Services expose and consume OData feeds.
  • 7. WCF Programming Models From http://blogs.msdn.com/b/endpoint/archive/2010/01/04/wcf-data-services-ria-services-alignment-questions-and-answers.aspx
  • 8. WCF Programming Models SOAP Services - The original WCF . Best for method based interfaces, needing message based security, other channels in addition to HTTP, or hosting outside of IIS. Workflow Services -Is used for sending and receiving Windows Workflow Foundation (WF) messages. RIA Services – Best for building Silverlight applications.
  • 9. WCF Programming Models WebHttp Services (WCF REST) – Best for exposing method based HTTP services or building a RESTful service with full control over the URI format. Data Services – Best when you are exposing your data model and associated logic through a RESTful interface. It includes a full implementation of the Open Data (OData) Protocol.
  • 10. Exposing data as a OData feed Define the data model. WCF Data Services natively supports ADO.NET Entity Framework. You can use any data model that implements IQueryable and IUpdateable interfaces. Create the data service. It is a class that inherits from the DataServiceclass, with a type T that is the namespace-qualified name of the entity container. Configure the data service.
  • 11. Accessing data service resources In OData, you address any data exposed by the data model by using a URI. http://server1/DS1.svc/Employees http://server1/DS1.svc/Employees(2) http://server1/DS1.svc/Employees(2)/FirstName/$value http://server1/DS1.svc/Employees?$filter=FirstNameeq ‘Tom’