SlideShare a Scribd company logo
1 of 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

More Related Content

What's hot

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
 

What's hot (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
 

Viewers also liked (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
 

Similar to 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
 

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

Recently uploaded

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...Enterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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 DevelopmentsTrustArc
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
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 interpreternaman860154
 
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 Scriptwesley chun
 
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...apidays
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
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...Miguel Araújo
 
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...Martijn de Jong
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 

Recently uploaded (20)

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...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
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
 
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
 
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...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
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...
 
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...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 

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