SlideShare a Scribd company logo
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
CodeMash 2013 Microsoft Data Stack
 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
CodeMash 2013 Microsoft Data Stack
 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

PPSX
Azure DocumentDB
PPSX
Azure Mobile Services .NET Backend
PPTX
Data asservice
PPT
Asp db
PPT
Time for a REST - .NET Framework v3.5 & RESTful Web Services
PPT
PPTX
Building nTier Applications with Entity Framework Services (Part 2)
PPT
ADO.NET Data Services
Azure DocumentDB
Azure Mobile Services .NET Backend
Data asservice
Asp db
Time for a REST - .NET Framework v3.5 & RESTful Web Services
Building nTier Applications with Entity Framework Services (Part 2)
ADO.NET Data Services

What's hot (20)

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

Viewers also liked (7)

PPTX
المشروع البدائي
PPTX
Gods of guitar
PPTX
Bismillahirahmanirahim
PPTX
Estonia & the estonian people
PDF
Idoia and sara
PPTX
Social media in het onderwijs
المشروع البدائي
Gods of guitar
Bismillahirahmanirahim
Estonia & the estonian people
Idoia and sara
Social media in het onderwijs
Ad

Similar to CodeMash 2013 Microsoft Data Stack (20)

PPTX
Practical OData
PPTX
Building nTier Applications with Entity Framework Services (Part 2)
PPT
Ado.Net Data Services (Astoria)
PPTX
Building RESTfull Data Services with WebAPI
PPTX
Producing an OData feed in 10 minutes
PPTX
05 entity framework
PDF
70487.pdf
PPTX
Introduction to o data
PPT
What's New for Data?
PPTX
Real World API Design Using The Entity Framework Services
PPTX
Using OData to build great customer experiences on any device by Lance Olson
ODP
Introduction to OData
PPTX
WCF Data Services - Bandung Charity Event - 2010
PDF
SAP ODATA Overview & Guidelines
PDF
Programming Entity Framework Building Data Centric Apps with the ADO NET Enti...
PPTX
Ps02 cint23 ado
PPTX
Building nTier Applications with Entity Framework Services
PPTX
Building N Tier Applications With Entity Framework Services 2010
PPTX
Gaining the Knowledge of the Open Data Protocol (OData)
PPTX
DPR202 Open Data for the Open Web
Practical OData
Building nTier Applications with Entity Framework Services (Part 2)
Ado.Net Data Services (Astoria)
Building RESTfull Data Services with WebAPI
Producing an OData feed in 10 minutes
05 entity framework
70487.pdf
Introduction to o data
What's New for Data?
Real World API Design Using The Entity Framework Services
Using OData to build great customer experiences on any device by Lance Olson
Introduction to OData
WCF Data Services - Bandung Charity Event - 2010
SAP ODATA Overview & Guidelines
Programming Entity Framework Building Data Centric Apps with the ADO NET Enti...
Ps02 cint23 ado
Building nTier Applications with Entity Framework Services
Building N Tier Applications With Entity Framework Services 2010
Gaining the Knowledge of the Open Data Protocol (OData)
DPR202 Open Data for the Open Web

Recently uploaded (20)

PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Empathic Computing: Creating Shared Understanding
PDF
cuic standard and advanced reporting.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Machine learning based COVID-19 study performance prediction
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Approach and Philosophy of On baking technology
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Review of recent advances in non-invasive hemoglobin estimation
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
20250228 LYD VKU AI Blended-Learning.pptx
Empathic Computing: Creating Shared Understanding
cuic standard and advanced reporting.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Unlocking AI with Model Context Protocol (MCP)
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Encapsulation_ Review paper, used for researhc scholars
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Machine learning based COVID-19 study performance prediction
“AI and Expert System Decision Support & Business Intelligence Systems”
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Approach and Philosophy of On baking technology
Dropbox Q2 2025 Financial Results & Investor Presentation

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
  • 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
  • 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