1 ADO.NET Data Services Mike Taulty Developer & Platform Group Microsoft Ltd

Slides:



Advertisements
Similar presentations
Language Integrated Query (LINQ) Martin Parry Developer & Platform Group Microsoft Ltd
Advertisements

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Windows 8 (1) (2) (3) Windows 8 (1) (2) (3)
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Feature: Reprint Outstanding Transactions Report © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
Feature: Purchase Requisitions - Requester © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Feature: Payroll and HR Enhancements © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
ASP.NET 3.5 Mike Ormond Developer & Platform Group Microsoft Ltd
.NET Framework V3.5+ & RESTful web services Mike Taulty Developer & Platform Group Microsoft Ltd
Visual Studio 2008 and ASP.NET 3.5 Mike Ormond Developer & Platform Group Microsoft Ltd
The Microsoft Technical Roadshow 2007 Advances for Data in VS “Orcas” Mike Taulty Developer & Platform Group Microsoft Ltd
What’s new in ASP.NET 3.5? Mike Ormond Developer & Platform Group Microsoft Ltd
Jon Flanders INT303. About Me  Jon Flanders –  Independent consultant/trainer  BizTalk MVP.
Windows 7 Training Microsoft Confidential. Windows ® 7 Compatibility Version Checking.
Feature: Purchase Order Prepayments II © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
Eric Nelson Developer & Platform Group Microsoft Ltd
Feature: OLE Notes Migration Utility
Feature: Web Client Keyboard Shortcuts © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
 Pablo Castro Software Architect Microsoft Corporation TL08.
Session 1.
travel Suru Windows 7 Release NET 4.0 / Surface 2.0 Release Multi-Touch Controls Multi-Touch API Surface Multi-Touch Controls & API Surface.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Feature: Assign an Item to Multiple Sites © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Feature: Print Remaining Documents © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
ADO.NET DATA SERVICES Mike Taulty Developer & Platform Group Microsoft UK
Service Interfaces Atom & AtomPub Atom-Enabled Data Services Drill Down: Windows Live Spaces Photos Data Services Framework Wrap-up.
NEXT: Overview – Sharing skills & code.
Project “Astoria” first announced in Mix 2007 Shared early prototypes, got tons of feedback Now we’re talking about the real deal Production quality bits,
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
 Mike Flasko Program Manager Microsoft Corporation TL07.
ADO.NET Entity Framework Mike Taulty Developer & Platform Group Microsoft Ltd
Feature: Suggested Item Enhancements – Sales Script and Additional Information © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
Web Service Programming with WCF 3.5 Eyal Vardi CEO E4D Solutions LTD Microsoft MVP Visual C# blog:
SQL Server SQL Azure Visual Studio“Quadrant” SQL Server Modeling Services Entity Framework ADO.NET“M”/EDM Data Services …
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
Why data services? Common challenges when creating rich web applications Creating rich web applications with data services Future scenarios & roadmap.

customer.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
demo Demo.
Feature: Void Historical/Open Transaction Updates © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
Feature: Suggested Item Enhancements – Analysis and Assignment © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and.
Windows Azure SQL Data Sync Name Title Microsoft Corporation.
projekt202 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
Introduction to.NET FX 3.0 (+ sneak preview of.NET FX 3.5) Martin Parry Developer & Platform Group Microsoft Ltd
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
Language Integrated Query Mike Taulty Developer & Platform Group Microsoft Ltd

2 ADO.NET Data Services for the Web Mike Flasko Program Manager, Microsoft “Project Astoria”
Building and Consuming REST-based Data Services for the Web
MIX 09 6/5/2018 9:14 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
ADO.NEXT Advances in Data Access for 2008
Title of Presentation 12/2/2018 3:48 PM
Jim Nakashima Program Manager Cloud Tools
Pablo Castro Software Architect Microsoft Corporation
8/04/2019 9:13 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Silverlight 2 Mike Taulty Developer & Platform Group Microsoft Ltd
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
Шитманов Дархан Қаражанұлы Тарих пәнінің
Title of Presentation 5/24/2019 1:26 PM
.NET Framework V3.5+ & RESTful web services
Presentation transcript:

1 ADO.NET Data Services Mike Taulty Developer & Platform Group Microsoft Ltd

Agenda OverviewExposing data sourcesBuilding clientsServer-side interception

Data Services – Overview Provides new functionality CRUD access to data over RESTful web services Built-in URI-based query syntax Client-side libraries for.NET, Silverlight and AJAX Builds on top of Windows Communication Foundation V3.5 Status In VS 2008 Service Pack 1,.NET Framework 3.5 Sp1 Shipped in 2008

RESTful Web Services? Resources Res 1 Res 2 Res 3 Res 4 HTTP Request URL VERB Payload HTTP Response Status GET POST PUT DELETE XMLJSON Payload XMLJSON

RESTful? REpresentational State Transfer Server-side resources identified by a URI Access 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 Is this “the death of SOAP”?

Data? What Kind of Data? Provide a type with public properties which are IQueryable Some rules about how T has to be formed Remember the extension method AsQueryable() Only get write access if your type implements IUpdatable Works well with generated code from; ADO.NET Entity Framework (ObjectContext) LINQ to SQL (DataContext*)

7 Exposing Data

ADO.NET Entity Framework ? SQL Provider Oracle Provider... Entity Provider Conceptual Model Store Model Map ADO.NET API ORM API

9 Using Entity Framework Data

Querying with Data Services URI based query mechanism Supports the notion of navigating by primary key MyEntitySet ( Col1=Value1, Col2=Value2,... ) Supports various operators $orderby, $top, $skip, $expand, $filter, $value

Operators for $filter

12 Querying with the URI

Building Clients Services offer metadata MyService.svc/$metadata.NET clients made easier through a proxy generation tool Visual Studio or datasvcutil.exe Useful for both regular.NET clients & Silverlight AJAX clients made easier through a script library “ASP.NET AJAX 4.0 Preview 4” Available as a download on CodeplexCodeplex

14 Building Clients

Interception & Operations Possible to hook code into the framework For queries we can write Query interceptors For modifications we can write Change interceptors Can also expose custom functionality Service Operations Useful for providing “canned” functionality, can be parameterised

16 Interception, Operations

Batching of Operations “INSERT” Customer 1 POST Order 1 POST Order 2 POST Order N POST

Batching of Operations “INSERT” Customer 1 Order 1 Order 2 Order N POST

Batching of Operations Provides a mechanism to process a batch 0 or more Query operations 0 or more [Create/Update/Delete] operations Uses multipart/mixed MIME type sent to a $batch endpoint Use SaveChanges(SaveChangesOptions.Batch) ExecuteBatch()

20 Batching

Managing Concurrency GET Customer: ALFKI Country: Spain Customer: ALFKI Country: Spain Customer: ALFKI Country: Spain Customer: ALFKI Country: Spain

Managing Concurrency PUT Customer: ALFKI Country: UK Customer: ALFKI Country: UK PUT Customer: ALFKI Country: Germany Customer: ALFKI Country: Germany

Managing Concurrency Optimistic concurrency Attribute (ETag) used to specify properties to be checked for concurrency violations Not necessary for Entity Framework data Standard HTTP protocol used eTags used to send to client ( in XML if necessary ) HTTP If-match headers used to check when PUT/DELETE occurs ( 412 returned for failure )

24 Concurrency

“Coming Soon” ADO.NET Data Services V1.5 Sits on top of.NET Framework V3.5 Sp1 Feature and bug release Data binding, row counts, paging, BLOB support, interface for provider writers Download ADO.NET Data Services Offline, Alpha Preview Local SQL Compact DB Accessed via the same RESTful services Kept in sync via the Sync Framework Download

Resources Other topics to consider Batching of queries, updates Optimistic concurrency model etc Data Services (“Astoria”) Team Blog My website ( search Data Services )

© 2008 Microsoft Corporation. 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.