SlideShare une entreprise Scribd logo
1  sur  17
Mike Benkovich
mike@benko.com
http://www.benkotips.com
Twitter: @mbenko
More info on www.BenkoTIPS.com
 Understand the Microsoft Data Stack
 Explore types of clients and formats
 What are the service options
 Ask the right questions
REST
Poco
OData
XML
RIA
 Client
 REST & OData
 ATOM
 JSON
 Server
 WCF Data Services
 ADO.NET Entity Framework
 RIA Services
More info on www.BenkoTIPS.com
 REST vs ODBC
 Representation StateTransfer
 Addressable resource – i.e. URL
http://northwind.com/data.svc/Customers('ALFKI')
 OData – fka Astoria
 Implementation ofWCF Data Services
 IDataService implementation
 WCF Data Services
 RIA Services
Data
More info on www.BenkoTIPS.com
 RESTful implementation of a data source
 URL based addressing scheme to data service
 Implements IDataService interface
 Query constructs
 Preface commands with $ … i.e. $filter $expand
 $skip, $top Server side paging
 $expand Expand related entities
 $filter Apply where clause
More info on www.BenkoTIPS.com
 Visit http://odata.org for complete list
 Available sources include:
▪ SharePoint
▪ Facebook Insights
▪ Netflix
▪ Twitter
▪ IBMWeb Sphere
▪ Vancouver Street Parking
▪ Dbpedia
▪ SQL Azure
▪ TwitPic
▪ TechEd 2010
▪ MIX 10
▪ Codename Dallas
▪ Stack Overflow
▪ Server Fault
▪ EBay
▪ + more coming
More info on www.BenkoTIPS.com
 Netflix
 http://odata.netflix.com/Catalog/
 http://odata.netflix.com/Catalog/Titles?$skip=5&$top=10
 http://odata.netflix.com/Catalog/Titles('BVcw3')
 http://odata.netflix.com/Catalog/Titles('BVcw3')/Cast
 http://odata.netflix.com/Catalog/People(47249)
 http://odata.netflix.com/Catalog/People(47249)/TitlesActedIn
 http://odata.netflix.com/Catalog/People(47249)/TitlesActedIn/$count
 http://odata.netflix.com/Catalog/People(47249)/Name/$value
 http://odata.netflix.com/Catalog/$metadata
 TechED 2010
 http://odata.msteched.com/sessions.svc/
 http://odata.msteched.com/sessions.svc/Speakers?$filter=SpeakerLastName eq 'Brown‘
 http://odata.msteched.com/sessions.svc/Speakers?$filter=SpeakerLastName eq
'Brown'&$expand=Sessions
 Twitter
 http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=mbenko
 Client
 REST & OData
 ATOM
 JSON
 Implementation of IDataService
 Expose functions & methods with [WebGet]
public class PocoData : DataService< PresenterData >
{
// This method is called only once to initialize service-wide policies.
public static void InitializeService(DataServiceConfiguration config)
{
config.SetEntitySetAccessRule("*", EntitySetRights.AllRead);
config.SetServiceOperationAccessRule("*", ServiceOperationRights.All);
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
}
}
[WebGet]
public List<string> SayHello()
{
return new List<string>() { "Hello World", "Whee!" };
}
 Object modeling layer
 Logical representation of Physical schema
 Create from Database
 Start from scratch
More info on www.BenkoTIPS.com
 Part of .NET 4.0 Framework
 Visual Studio 2010 Designer support
 Flexible implementation allows many
approaches
 Generate from Database
 “Model First”
 “Code First”
 Provides “Logical” to “Physical” abstraction
 Inheritance
 Table per Hierarchy
 Table perType
 Table per ConcreteType
 Hybrids
 Many entities to one
table
 Stored Procedures
 Many tables to one
entity
 Abstract Entities
 Associations within
EntitySets
 Associations across
EntitySets
 Store-side
discriminators
 EDM-side
discriminators
 QueryViews, Defining
Query, CommandText
 REST and OData provide a simple, easy to use way
of addressing data exposed in the real world
 The industry is adopting OData and embracing it in
.NET, AJAX, Silverlight, iPhone, and other emerging
platforms
 WCF Data Services implement the IDataService
interface making it very easy to create and host an
OData service
 ADO.NET Entity Framework provides a
comprehensive platform for building the Data Layer
for n-tier applications
 MSDN Data Developer Center:
http://msdn.com/data
 ADO.NETTeam Blog:
http://blogs.msdn.com/adonet
 OData Blog:
http://odata.org/blog
 WCF Data ServicesTeam Blog:
http://blogs.msdn.com/astoriateam
 EF Design Blog:
http://blogs.msdn.com/efdesign
 Data Platform Development Forums:
http://msdn.com/data and click on the “Forums” tab
 Patterns andTestability:
http://bit.ly/learnef4test, http://bit.ly/ef4wpfsample

Contenu connexe

Tendances

Advance Webpage Devlopment .NET
Advance Webpage Devlopment .NETAdvance Webpage Devlopment .NET
Advance Webpage Devlopment .NETPandeyABHISHEK1
 
Web 10mca556 syllabs
Web 10mca556 syllabsWeb 10mca556 syllabs
Web 10mca556 syllabsRamesh Bindu
 
20140419 xamarin で Azure Mobile Services
20140419 xamarin で Azure Mobile Services20140419 xamarin で Azure Mobile Services
20140419 xamarin で Azure Mobile ServicesTakayoshi Tanaka
 
Efficient Spring Data REST Development
Efficient Spring Data REST DevelopmentEfficient Spring Data REST Development
Efficient Spring Data REST DevelopmentCatalin Tudose
 
Save your data
Save your dataSave your data
Save your datafragphace
 
Getting your data in and out of elasticsearch: let me count the ways
Getting your data in and out of elasticsearch: let me count the waysGetting your data in and out of elasticsearch: let me count the ways
Getting your data in and out of elasticsearch: let me count the ways🥑 Jay Miller
 
Server interaction with web socket protocol
Server interaction with web socket protocolServer interaction with web socket protocol
Server interaction with web socket protocolRahul Rai
 
Getting started with Elasticsearch in .net
Getting started with Elasticsearch in .netGetting started with Elasticsearch in .net
Getting started with Elasticsearch in .netIsmaeel Enjreny
 
Creating REST Webservice With NetBeans
Creating REST Webservice With NetBeansCreating REST Webservice With NetBeans
Creating REST Webservice With NetBeansNeil Ghosh
 
Building Modern Websites with ASP.NET by Rachel Appel
Building Modern Websites with ASP.NET by Rachel AppelBuilding Modern Websites with ASP.NET by Rachel Appel
Building Modern Websites with ASP.NET by Rachel Appel.NET Conf UY
 
Sharepoint Saturday India Online best practice for developing share point sol...
Sharepoint Saturday India Online best practice for developing share point sol...Sharepoint Saturday India Online best practice for developing share point sol...
Sharepoint Saturday India Online best practice for developing share point sol...Shakir Majeed Khan
 
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel AppelBuilding Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel.NET Conf UY
 
MXSync External Database Diagram
MXSync External Database DiagramMXSync External Database Diagram
MXSync External Database DiagramJay Wilson
 
Elastic 101 index operations
Elastic 101   index operationsElastic 101   index operations
Elastic 101 index operationsIsmaeel Enjreny
 

Tendances (20)

Advance Webpage Devlopment .NET
Advance Webpage Devlopment .NETAdvance Webpage Devlopment .NET
Advance Webpage Devlopment .NET
 
ASP.NET Lecture 4
ASP.NET Lecture 4ASP.NET Lecture 4
ASP.NET Lecture 4
 
Web 10mca556 syllabs
Web 10mca556 syllabsWeb 10mca556 syllabs
Web 10mca556 syllabs
 
20140419 xamarin zumo
20140419 xamarin zumo20140419 xamarin zumo
20140419 xamarin zumo
 
20140419 xamarin で Azure Mobile Services
20140419 xamarin で Azure Mobile Services20140419 xamarin で Azure Mobile Services
20140419 xamarin で Azure Mobile Services
 
Efficient Spring Data REST Development
Efficient Spring Data REST DevelopmentEfficient Spring Data REST Development
Efficient Spring Data REST Development
 
Save your data
Save your dataSave your data
Save your data
 
Getting your data in and out of elasticsearch: let me count the ways
Getting your data in and out of elasticsearch: let me count the waysGetting your data in and out of elasticsearch: let me count the ways
Getting your data in and out of elasticsearch: let me count the ways
 
Web services
Web services Web services
Web services
 
Ajax
AjaxAjax
Ajax
 
Server interaction with web socket protocol
Server interaction with web socket protocolServer interaction with web socket protocol
Server interaction with web socket protocol
 
Ajax
AjaxAjax
Ajax
 
Getting started with Elasticsearch in .net
Getting started with Elasticsearch in .netGetting started with Elasticsearch in .net
Getting started with Elasticsearch in .net
 
Creating REST Webservice With NetBeans
Creating REST Webservice With NetBeansCreating REST Webservice With NetBeans
Creating REST Webservice With NetBeans
 
Building Modern Websites with ASP.NET by Rachel Appel
Building Modern Websites with ASP.NET by Rachel AppelBuilding Modern Websites with ASP.NET by Rachel Appel
Building Modern Websites with ASP.NET by Rachel Appel
 
Sharepoint Saturday India Online best practice for developing share point sol...
Sharepoint Saturday India Online best practice for developing share point sol...Sharepoint Saturday India Online best practice for developing share point sol...
Sharepoint Saturday India Online best practice for developing share point sol...
 
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel AppelBuilding Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
Building Real Time Applications with ASP.NET SignalR 2.0 by Rachel Appel
 
Intro to Web Sockets
Intro to Web Sockets Intro to Web Sockets
Intro to Web Sockets
 
MXSync External Database Diagram
MXSync External Database DiagramMXSync External Database Diagram
MXSync External Database Diagram
 
Elastic 101 index operations
Elastic 101   index operationsElastic 101   index operations
Elastic 101 index operations
 

En vedette (7)

المشروع البدائي
المشروع البدائيالمشروع البدائي
المشروع البدائي
 
Care planning
Care planningCare planning
Care planning
 
Gods of guitar
Gods of guitarGods of guitar
Gods of guitar
 
Bismillahirahmanirahim
BismillahirahmanirahimBismillahirahmanirahim
Bismillahirahmanirahim
 
Estonia & the estonian people
Estonia & the estonian peopleEstonia & the estonian people
Estonia & the estonian people
 
Idoia and sara
Idoia and saraIdoia and sara
Idoia and sara
 
Social media in het onderwijs
Social media in het onderwijsSocial media in het onderwijs
Social media in het onderwijs
 

Similaire à CodeMash 2013 Microsoft Data Stack

Web Technologies - forms and actions
Web Technologies -  forms and actionsWeb Technologies -  forms and actions
Web Technologies - forms and actionsAren Zomorodian
 
How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages Marc Leinbach
 
Rest API and Client OM for Developer
Rest API and Client OM for DeveloperRest API and Client OM for Developer
Rest API and Client OM for DeveloperInnoTech
 
Full Stack Developer
Full Stack DeveloperFull Stack Developer
Full Stack DeveloperAkbar Uddin
 
Windows Azure and a little SQL Data Services
Windows Azure and a little SQL Data ServicesWindows Azure and a little SQL Data Services
Windows Azure and a little SQL Data Servicesukdpe
 
Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Igor Moochnick
 
Developing for Astoria: ADO.NET Data Services
Developing for Astoria: ADO.NET Data ServicesDeveloping for Astoria: ADO.NET Data Services
Developing for Astoria: ADO.NET Data ServicesHarish Ranganathan
 
REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5Rob Windsor
 
Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)David McCarter
 
Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0Saltmarch Media
 
RESTful Data Services with the ADO.NET Data Services Framework
RESTful Data Services with the ADO.NET Data Services FrameworkRESTful Data Services with the ADO.NET Data Services Framework
RESTful Data Services with the ADO.NET Data Services Frameworkgoodfriday
 
Building+restful+webservice
Building+restful+webserviceBuilding+restful+webservice
Building+restful+webservicelonegunman
 
Introduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST APIIntroduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST APIRob Windsor
 
Jsp/Servlet
Jsp/ServletJsp/Servlet
Jsp/ServletSunil OS
 
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기lanslote
 

Similaire à CodeMash 2013 Microsoft Data Stack (20)

Web Technologies - forms and actions
Web Technologies -  forms and actionsWeb Technologies -  forms and actions
Web Technologies - forms and actions
 
How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages
 
Servlets intro
Servlets introServlets intro
Servlets intro
 
Practical OData
Practical ODataPractical OData
Practical OData
 
Rest API and Client OM for Developer
Rest API and Client OM for DeveloperRest API and Client OM for Developer
Rest API and Client OM for Developer
 
Full Stack Developer
Full Stack DeveloperFull Stack Developer
Full Stack Developer
 
Windows Azure and a little SQL Data Services
Windows Azure and a little SQL Data ServicesWindows Azure and a little SQL Data Services
Windows Azure and a little SQL Data Services
 
Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)Ado.Net Data Services (Astoria)
Ado.Net Data Services (Astoria)
 
Developing for Astoria: ADO.NET Data Services
Developing for Astoria: ADO.NET Data ServicesDeveloping for Astoria: ADO.NET Data Services
Developing for Astoria: ADO.NET Data Services
 
REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5
 
Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)Building nTier Applications with Entity Framework Services (Part 2)
Building nTier Applications with Entity Framework Services (Part 2)
 
Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0Building RESTful Services with WCF 4.0
Building RESTful Services with WCF 4.0
 
RESTful Data Services with the ADO.NET Data Services Framework
RESTful Data Services with the ADO.NET Data Services FrameworkRESTful Data Services with the ADO.NET Data Services Framework
RESTful Data Services with the ADO.NET Data Services Framework
 
Building+restful+webservice
Building+restful+webserviceBuilding+restful+webservice
Building+restful+webservice
 
Introduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST APIIntroduction to the SharePoint Client Object Model and REST API
Introduction to the SharePoint Client Object Model and REST API
 
Jsp/Servlet
Jsp/ServletJsp/Servlet
Jsp/Servlet
 
Day7
Day7Day7
Day7
 
Android+ax+app+wcf
Android+ax+app+wcfAndroid+ax+app+wcf
Android+ax+app+wcf
 
Android ax app wcf
Android ax app wcfAndroid ax app wcf
Android ax app wcf
 
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
 

Dernier

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 2024Victor Rentea
 
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)Zilliz
 
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.pptxRemote DBA Services
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
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, ...apidays
 
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 challengesrafiqahmad00786416
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
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 TerraformAndrey Devyatkin
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
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...DianaGray10
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
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 AmsterdamUiPathCommunity
 
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​Bhuvaneswari Subramani
 

Dernier (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
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
 
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)
 
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
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
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, ...
 
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
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
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
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
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...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
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​
 

CodeMash 2013 Microsoft Data Stack

  • 2. More info on www.BenkoTIPS.com  Understand the Microsoft Data Stack  Explore types of clients and formats  What are the service options  Ask the right questions
  • 4.  Client  REST & OData  ATOM  JSON  Server  WCF Data Services  ADO.NET Entity Framework  RIA Services
  • 5. More info on www.BenkoTIPS.com  REST vs ODBC  Representation StateTransfer  Addressable resource – i.e. URL http://northwind.com/data.svc/Customers('ALFKI')  OData – fka Astoria  Implementation ofWCF Data Services  IDataService implementation  WCF Data Services  RIA Services Data
  • 6. More info on www.BenkoTIPS.com  RESTful implementation of a data source  URL based addressing scheme to data service  Implements IDataService interface  Query constructs  Preface commands with $ … i.e. $filter $expand  $skip, $top Server side paging  $expand Expand related entities  $filter Apply where clause
  • 7. More info on www.BenkoTIPS.com  Visit http://odata.org for complete list  Available sources include: ▪ SharePoint ▪ Facebook Insights ▪ Netflix ▪ Twitter ▪ IBMWeb Sphere ▪ Vancouver Street Parking ▪ Dbpedia ▪ SQL Azure ▪ TwitPic ▪ TechEd 2010 ▪ MIX 10 ▪ Codename Dallas ▪ Stack Overflow ▪ Server Fault ▪ EBay ▪ + more coming
  • 8. More info on www.BenkoTIPS.com  Netflix  http://odata.netflix.com/Catalog/  http://odata.netflix.com/Catalog/Titles?$skip=5&$top=10  http://odata.netflix.com/Catalog/Titles('BVcw3')  http://odata.netflix.com/Catalog/Titles('BVcw3')/Cast  http://odata.netflix.com/Catalog/People(47249)  http://odata.netflix.com/Catalog/People(47249)/TitlesActedIn  http://odata.netflix.com/Catalog/People(47249)/TitlesActedIn/$count  http://odata.netflix.com/Catalog/People(47249)/Name/$value  http://odata.netflix.com/Catalog/$metadata  TechED 2010  http://odata.msteched.com/sessions.svc/  http://odata.msteched.com/sessions.svc/Speakers?$filter=SpeakerLastName eq 'Brown‘  http://odata.msteched.com/sessions.svc/Speakers?$filter=SpeakerLastName eq 'Brown'&$expand=Sessions  Twitter  http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=mbenko
  • 9.
  • 10.  Client  REST & OData  ATOM  JSON
  • 11.  Implementation of IDataService  Expose functions & methods with [WebGet] public class PocoData : DataService< PresenterData > { // This method is called only once to initialize service-wide policies. public static void InitializeService(DataServiceConfiguration config) { config.SetEntitySetAccessRule("*", EntitySetRights.AllRead); config.SetServiceOperationAccessRule("*", ServiceOperationRights.All); config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2; } } [WebGet] public List<string> SayHello() { return new List<string>() { "Hello World", "Whee!" }; }
  • 12.  Object modeling layer  Logical representation of Physical schema  Create from Database  Start from scratch
  • 13. More info on www.BenkoTIPS.com  Part of .NET 4.0 Framework  Visual Studio 2010 Designer support  Flexible implementation allows many approaches  Generate from Database  “Model First”  “Code First”  Provides “Logical” to “Physical” abstraction
  • 14.
  • 15.  Inheritance  Table per Hierarchy  Table perType  Table per ConcreteType  Hybrids  Many entities to one table  Stored Procedures  Many tables to one entity  Abstract Entities  Associations within EntitySets  Associations across EntitySets  Store-side discriminators  EDM-side discriminators  QueryViews, Defining Query, CommandText
  • 16.  REST and OData provide a simple, easy to use way of addressing data exposed in the real world  The industry is adopting OData and embracing it in .NET, AJAX, Silverlight, iPhone, and other emerging platforms  WCF Data Services implement the IDataService interface making it very easy to create and host an OData service  ADO.NET Entity Framework provides a comprehensive platform for building the Data Layer for n-tier applications
  • 17.  MSDN Data Developer Center: http://msdn.com/data  ADO.NETTeam Blog: http://blogs.msdn.com/adonet  OData Blog: http://odata.org/blog  WCF Data ServicesTeam Blog: http://blogs.msdn.com/astoriateam  EF Design Blog: http://blogs.msdn.com/efdesign  Data Platform Development Forums: http://msdn.com/data and click on the “Forums” tab  Patterns andTestability: http://bit.ly/learnef4test, http://bit.ly/ef4wpfsample