SlideShare uma empresa Scribd logo
1 de 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

Mais conteúdo relacionado

Mais procurados

Web 10mca556 syllabs
Web 10mca556 syllabsWeb 10mca556 syllabs
Web 10mca556 syllabs
Ramesh Bindu
 
Creating REST Webservice With NetBeans
Creating REST Webservice With NetBeansCreating REST Webservice With NetBeans
Creating REST Webservice With NetBeans
Neil Ghosh
 
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
 

Mais procurados (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
 

Destaque (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
 

Semelhante a CodeMash 2013 Microsoft Data Stack

Web Technologies - forms and actions
Web Technologies -  forms and actionsWeb Technologies -  forms and actions
Web Technologies - forms and actions
Aren Zomorodian
 
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 Services
Harish Ranganathan
 
Building+restful+webservice
Building+restful+webserviceBuilding+restful+webservice
Building+restful+webservice
lonegunman
 
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
[SharePoint Korea Conference 2013 / 강율구] Sharepoint 스마트하게 개발하기
lanslote
 

Semelhante a 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 스마트하게 개발하기
 

Último

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Último (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

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