time for a rest - .net framework v3.5 & restful web services
DESCRIPTION
Building Services: .NET FX 3.5, SOAP, REST, and Beyond Most developers will be aware of various Microsoft technologies to help build SOAP services, the latest of which are WCF and WF in .NET FX 3.5, but there’s another world of services outside SOAP. Recently Microsoft has been very active in its support for, and use of, REST as a mechanism for implementing services. This event will cover recent and forthcoming technologies for building services with SOAP and REST, and we’ll explain REST for the uninitiated. Agenda: Session 1: The SOAP Story In this session we’ll do a lighting quick re-cap of what SOAP is, what specs surround it before looking at how far the SOAP programming model has come in Microsoft’s latest-and-greatest stack – Windows Communication Foundation (WCF) V3.5. We’ll talk about different approaches to building services and we’ll take a good look at the integration between WCF V3.5 and Windows Workflow Foundation (WF) V3.5 which opens up a whole new way of implementing services. Session 2: Time for a REST Web applications have evolved; using technologies like AJAX and Silverlight they have rich client-side code that wants to consume services, but they prefer JSON, “plain xml” and REST. In this session we’ll introduce REST for the uninitiated, and we’ll demonstrate some of the new and forthcoming technology that Microsoft has for working with REST: WCF 3.5, Web3S, Windows Live Data, and Codename “Astoria”. For more details and the original slidedeck visit http://www.microsoft.com/uk/msdn/events/new/Detail.aspx?id=316TRANSCRIPT
.NET Framework V3.5+ & RESTful web servicesMike TaultyDeveloper & Platform GroupMicrosoft [email protected]://www.mtaulty.com
Agenda
Windows Communication Foundation V3.5ReleasedVisual Studio 2008/.NET Framework V3.5
ADO.NET Data ServicesPreview – framework and toolingLatest is the December CTP, ships H1 2008Has strong links to ADO.NET Entity Framework
– Both are part of ASP.NET 3.5 Extensions Preview
RESTful?
RESTful?
Resources
Res 1
Res 2
Res 3
Res 4
HTTP RequestURL
VERBPayload
HTTP ResponseStatus
GETPOSTPUT
DELETEXML JSON
Payload
XML JSON
RESTful?
REpresentational State TransferIn a nutshell;
Server-side resources identified by a URIAccess is over HTTP, verb tied to action
– GET to read the value of a resource– POST to create a new resource*– PUT to update an existing resource*– DELETE to delete a resource
Returned data is “plain” – XML or JSON
RESTful?
WCF V3.5
WCF V3.5 and REST
New capabilities around RESTful serviceswebHttpBinding
– HTTP(S) protocol (not new in itself)– URI based dispatch and parameter passing– “Plain” XML/JSON serialisation
New RSS/Atom publication capabilities
WCF V3.5 REST and Syndication
ADO.NET Data Services
Data Services
Built on top of WCF V3.5CRUD access to data over a RESTful interface
Returns XML (ATOM format) or JSON
Built-in URI-based query syntaxselection, filtering, paging, sorting
Client-side libraries for .NET and AJAX clientsDesktop .NET and Silverlight .NET
data? what kind of data?
Provide a type with public properties which are;
IQueryable<T>, IEnumerable<T>Also get write access if your type implements;
IUpdatableWorks well with generated code from;
ADO.NET Entity Framework (ObjectContext)LINQ to SQL (DataContext*)
entity framework? who he?
Extension to the provider modelConceptual model
InheritanceRelationshipsComposite Entities
AbstractionsSchema of the storeSQL dialact of the store
Store
.NET Provider
V2.0
Conceptual Model
.NET Provider(EntitySQL)
ORM & LINQ
“V3.0”
Map
ping
ADO.NET Data Services
More Data Services Capabilities
Service OperationsExpose more advanced functionality
Query InterceptorsHook into requests for resources and run custom logic
Update InterceptorsHook into modifications for resources and run custom logic
ADO.NET Data Services II
Resources
http://www.asp.net(looking for “3.5 Extensions preview”)
http://msdn.co.uk(looking for WCF V3.5 screencasts)
MSDN in the UK
Visit http://msdn.co.uk NewsletterEventsScreencastsBlogs
© 2007 Microsoft Ltd. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the
date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.