CodeMash 2013 Microsoft Data Stack

506 views

Published on

Explore the Microsoft Data Stack.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
506
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

CodeMash 2013 Microsoft Data Stack

  1. 1. Mike Benkovichmike@benko.comhttp://www.benkotips.comTwitter: @mbenko
  2. 2.  Understand the Microsoft Data Stack  Explore types of clients and formats  What are the service options  Ask the right questionsMore info on www.BenkoTIPS.com
  3. 3. OData Poco REST XML RIA
  4. 4.  Client  Server  REST & OData  WCF Data Services  ATOM  ADO.NET Entity Framework  JSON  RIA Services
  5. 5.  REST vs ODBC  Representation State Transfer  Addressable resource – i.e. URL http://northwind.com/data.svc/Customers(ALFKI)  OData – fka Astoria  Implementation of WCF Data Services  IDataService implementation  WCF Data Services Data  RIA ServicesMore info on www.BenkoTIPS.com
  6. 6.  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 clauseMore info on www.BenkoTIPS.com
  7. 7.  Visit http://odata.org for complete list  Available sources include: ▪ SharePoint ▪ TwitPic ▪ Facebook Insights ▪ TechEd 2010 ▪ Netflix ▪ MIX 10 ▪ Twitter ▪ Codename Dallas ▪ IBM Web Sphere ▪ Stack Overflow ▪ Vancouver Street Parking ▪ Server Fault ▪ Dbpedia ▪ EBay ▪ SQL Azure ▪ + more comingMore info on www.BenkoTIPS.com
  8. 8.  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=mbenkoMore info on www.BenkoTIPS.com
  9. 9.  Client  REST & OData  ATOM  JSON
  10. 10.  Implementation of IDataService 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; } } Expose functions & methods with [WebGet] [WebGet] public List<string> SayHello() { return new List<string>() { "Hello World", "Whee!" }; }
  11. 11.  Object modeling layer Logical representation of Physical schema  Create from Database  Start from scratch
  12. 12.  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” abstractionMore info on www.BenkoTIPS.com
  13. 13.  Inheritance  Abstract Entities  Table per Hierarchy  Associations within  Table per Type EntitySets  Table per Concrete Type  Associations across  Hybrids EntitySets Many entities to one  Store-side table discriminators Stored Procedures  EDM-side Many tables to one discriminators entity  QueryViews, Defining Query, CommandText
  14. 14.  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
  15. 15.  MSDN Data Developer Center: http://msdn.com/data ADO.NET Team Blog: http://blogs.msdn.com/adonet OData Blog: http://odata.org/blog WCF Data Services Team 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 and Testability: http://bit.ly/learnef4test, http://bit.ly/ef4wpfsample

×