1 / 21

Developing REST Applications with the .NET Framework

FT55. Developing REST Applications with the .NET Framework. Henrik Frystyk Nielsen, Principal Architect. Do You Speak REST?. What is REST? Why REST? How does .NET support REST? How do I get started?. Constrained Interactions. Resource are identified by URIs

tareq
Download Presentation

Developing REST Applications with the .NET Framework

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FT55 Developing REST Applications with the .NET Framework Henrik Frystyk Nielsen, Principal Architect

  2. Do You Speak REST? • What is REST? • Why REST? • How does .NET support REST? • How do I get started?

  3. Constrained Interactions • Resource are identified by URIs • Resources are exposed in terms of state • Resources can only interact through exchange of state • Resource behavior is hidden

  4. Guiding Principles or Straight Jacket? • Loose coupling • Resources only see each other as state • Scalability • State is often cacheable and can be moved around • Composability • State + State = State • Deployment • State can be rendered in many different ways • Reuse and Interop • State is easy to consume • Observability • State shows what the system is doing

  5. Going Beyond Retrieval • HTTP Vocabulary • GET – get state • PUT – create/replace state • POST – insert/modify/process state • DELETE – delete state • OPTIONS – metadata • Atom and AtomPub • Collections and link relationships

  6. Open Data Protocol (OData) • A RESTful protocol for data sharing • It all started with Astoria, or “Data Services” • A set of conventions on top of AtomPub • Structured data, expanded hierarchies, queries in URLs, batching • With many products following the conventions, it was time for a name

  7. From Browsing to App Model • Move towards HTTP/REST across all tiers • Mash-ups, Cloud Services, User Interface • Computation and Business Logic • Databases and Files • Devices and hardware

  8. Service alignment • WCF WebHttp Services (WCF REST) • Building RESTful as well as Xml over HTTP services with control over URI/format/protocol • WCF Data Services (ADO.Net Data Services) • Exposing data models through a RESTful interface • WCF RIA Services (.NET RIA Services) • Building end-to-end Silverlight application • WCF Core Services • Full flexibility for building operation-centric services with industry standard interop, as well as channel and host plug-ability. • WCF Workflow Services • Long running, durable operations or where the specification and enforcement of operation sequencing is important

  9. Windows Communication Foundation Programming Model Core Services Web HTTP Services Data Services RIA Services Workflow Services Service Model Data Contract Service Contract Service Behavior Channel Model Formats (Atom, JSON, XML,…) Transports (HTTP, TCP, …) Protocols (SOAP, HTTP, Open Data Protocol,…)

  10. DEMO Web HTTP Services ServiceOperation style HTTP/REST services

  11. DEMO Data Services Exposing RESTful data models

  12. DEMO RIA Services Rich end-to-end Silverlight apps

  13. Demo Recap… • WCF WebHttp Services (WCF REST) • Building RESTful as well as Xml over HTTP services with control over URI/format/protocol • WCF Data Services (ADO.Net Data Services) • Exposing data models through a RESTful interface • WCF RIA Services (.NET RIA Services) • Building end-to-end Silverlight application

  14. >>FUTURE DEMO Mixing HTTP, Data & RIA Services

  15. >>FUTURE DEMO Http Client New generation HTTP API

  16. What’s Next? • What is REST? • Architectural style for state-driven applications • Key is constrained interactions • Why REST? • Interop between cloud, on-premise, cross-domains • Move towards resource-based application model • How do I get started? • .NET 4.0 Beta 2 and Silverlight 4.0 Preview • http://blogs.msdn.com/endpoint • Blogs and announcements

  17. Catch These Presentations

  18. YOUR FEEDBACK IS IMPORTANT TO US! Please fill out session evaluation forms online at MicrosoftPDC.com

  19. Learn More On Channel 9 • Expand your PDC experience through Channel 9 • Explore videos, hands-on labs, sample code and demos through the new Channel 9 training courses channel9.msdn.com/learn Built by Developers for Developers….

More Related