Your SlideShare is downloading. ×
0
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
OData   feed for that - stldodn
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

OData feed for that - stldodn

1,166

Published on

Presentation delivered at the 2010 Day of .NET, August 20 & 21 at the Ameristar in St. Charles, MO

Presentation delivered at the 2010 Day of .NET, August 20 & 21 at the Ameristar in St. Charles, MO

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

No Downloads
Views
Total Views
1,166
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
17
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Odata - “Make An AppA Feed For That” <br />Chris Deweese, Consultant, Daugherty Business Solutions<br />
  • 2.
  • 3. Warning<br />Should I answer my phone and suddenly run out, rest assured knowing it’s because my wife is most likely going into labor with our 3rd child.<br />Its definitely not because I’m totally unprepared for this and have no idea what I’m talking about.<br />Definitely not that.<br />
  • 4. This session<br /><ul><li>A Problem
  • 5. What is OData?
  • 6. Nuts &amp; Bolts
  • 7. Make a feed for that (.NET 4/VS 2010 - *bling*)</li></li></ul><li>A Problem<br /><ul><li>Middle-Tier Data Access</li></ul>DatabaseServers<br />Front-End<br />Servers<br />Middle-TierServers<br />
  • 8. What is it?<br /><ul><li>Open Data Protocol
  • 9. A protocol for working with data via HTTP
  • 10. Developed as protocol for “Astoria”/ADO.Net Data Services
  • 11. V2 implemented in WCF Data Services</li></li></ul><li>Intrigued. Continue.<br /><ul><li>Represent structured data in a rich way
  • 12. Supports multiple formats – Xml, Json
  • 13. Xml is based on Atom Pub
  • 14. Currently released under Microsoft’s Open Specification Promise</li></li></ul><li>What you get<br /><ul><li>OData services provide a Service Document that is all about Metadata
  • 15. Rich metadata allows consumers to understand data shape &amp; types
  • 16. OData is modular; only implement the pieces you need</li></li></ul><li>More Xml?<br /><ul><li>More than just spewing Xml
  • 17. OData is about making data accessible and queryable using standard Http verbs &amp; actions
  • 18. Don’t forget! OData supports JSON too (if you hate Xml that much)</li></li></ul><li>Query over Http?<br /><ul><li>OData provides query operators to sort &amp; filter data via URIs
  • 19. $filter
  • 20. $orderby
  • 21. $skip, $top
  • 22. … and there’s more
  • 23. Producers implement query operators around their data</li></li></ul><li>Query? Over Http?<br /><ul><li>Ever tried to build a “queryable” web service with SOAP?
  • 24. Bottom line: Ugly.
  • 25. OData: Not-so-uglyhttp://myblog.com/blog.svc/Posts?$filter=TagName%20eq$20‘WCF’</li></li></ul><li>Why Http? <br /><ul><li>OData takes what works for the web
  • 26. Using Http as it was meant to be used
  • 27. Follows REST style philosophy – uses URIs as resources
  • 28. [OData team does not claim to be ‘restful’]
  • 29. Makes Data accessible to apps via the most successful protocol in use – Http.
  • 30. Not another “SOAP”
  • 31. ATOM, JSON - Easy integration with Modern Languages &amp; Frameworks</li></li></ul><li>Terminology<br /><ul><li>Entity – Representation of data – Blog Post, Product, Movie, etc.
  • 32. Feed – A collection of entities exposed through a service.
  • 33. Producer – Services that exposes data using OData feeds – Netflix, MIX10, NerdDinner
  • 34. Consumer – An application or framework that can consume OData feeds – Silverlight 4, PowerPivot, PHP*, Objective-C* [*=using OData SDK]</li></li></ul><li>OData “Ecosystem”<br />Slide Credit: Session FT13 from MIX10<br />
  • 35. OData in the Wild<br />Servers<br /><ul><li>WCF Data Services
  • 36. SharePoint 2010
  • 37. SQL Server Reporting Services 2008 R2
  • 38. SQL Azure
  • 39. IBM WebSphereeXtremeScale
  • 40. Microsoft Media Room
  • 41. WCF RIA Services</li></ul>Services<br /><ul><li>Netflix
  • 42. Mix 2010
  • 43. Nerd Dinner
  • 44. Vancouver’s vanGuide
  • 45. Open Government Data Initiative
  • 46. Open Science Data Initiative
  • 47. Microsoft Codename “Dallas”
  • 48. City of Edmonton</li></ul>Clients<br /><ul><li>Excel + PowerPivot
  • 49. LINQPad
  • 50. OData Explorer</li></ul>Client libraries<br /><ul><li>.NET
  • 51. Silverlight
  • 52. Windows Phone 7 Series
  • 53. Javascript
  • 54. Java
  • 55. Objective-C
  • 56. PHP</li></ul>Slide Credit: Session FT13 from MIX10<br />
  • 57. Let’s Take a Peek<br /><ul><li>NUTS! (and bolts too) </li></ul>Photo Credit:SashaW via Flickr<br />
  • 58. Feed for What?<br /><ul><li>Scott Hanselman’sStackOverflow Challenge
  • 59. Using a recent dump of the SO Database, let’s build a feed for that</li></ul>Read Scott’s post here: http://bit.ly/bq5WA9<br />
  • 60. Stuff We Didn’t Cover<br /><ul><li>Creating/Deleting Entities
  • 61. Security (ASP.NET/Windows/NTLM)
  • 62. Other Languages, JavaScript, PHP, Etc.
  • 63. Media Streaming/Content Delivery support (WCF Data Services/IDataServiceStreamProvider)
  • 64. Lots of other things..</li></li></ul><li>Take-a-ways<br /><ul><li>OData is a protocol for enabling data-driven, web-based services
  • 65. In .NET OData is implemented by WCF Data Services using EF
  • 66. Developers can take control of Entity Access &amp; Performance tuning of WCF Data Service (caching, paging)
  • 67. OData uses existing authentication &amp; authorization schemes
  • 68. OData feeds can replace existing web APIs with a data-centric model</li></li></ul><li>Discussion<br />
  • 69. Thanks!<br /><ul><li>OData resources:
  • 70. http://odata.org/
  • 71. http://odataprimer.com
  • 72. http://blogs.msdn.com/astoriateam
  • 73. Contact me:
  • 74. http://christopherDeweese.com
  • 75. @cdeweese on the Twitter</li>

×