| By Kevin Hoffman | Article Rating: |
|
| May 1, 2007 03:00 PM EDT | Reads: |
12,946 |
Kevin Hoffman's BlogMicrosoft has been getting a lot of press lately. From the announcement of their decision to Open Source some of the Dynamic Language Runtime (the tool that powers the IronPython thing in Silverlight) to the announcement that the ADO.NET Entity Framework will not ship as part of Orcas (don't even get me started on my opinion of that announcement!) - MS has been getting a lot of write-ups and a lot of blog treatment - some good, some bad.
Jasper
This is a set of components and stack-on code that, from what I can tell, provides an incredibly "Rails-like" experience to ADO.NET. They are referring to this as "dynamic ADO.NET", which means that it requires a dynamic language runtime (The DLR currently drives IronPython 1.1) in order to work. This means that objects in Jasper are generated dynamically and on the fly in order to match the underlying entity model. Currently, it only supports VB9 and IronPython, so I'm not going to bother playing with it just yet. I'll look into it again when they get into Beta 1 or they add more languages (C# or F#) in an upcoming CTP.
Astoria
This one is worth mentioning, and certainly worth exploring. In short, Microsoft has finally realized the real value in RESTful interfaces. This is one more notch in my world-wide campaign to rid the universe of WSDL forever (down with WSDL!). In short, using Astoria, you can create "Web Data Services", which expose an underlying EDM via RESTful interface. So, you could expose a Customers entity using Astoria, and get access to the following types of URLs (which return simple XML, JSON, or RDF-XML):
- /myentities.svc/Customers[BOB] - Returns the BOB customer
- /myentities.svc/Customers[BOB]/Orders - Returns all of BOB's Orders
- /myentities.svc/Customers[BOB]$expand=Orders - Returns BOB and all of Bob's Orders, with the Orders contained within the Bob entity
- /myentities.svc/Customers[City eq 'New York']/Orders - Returns all orders from all customers with a City value of 'New York'
As you can see, this is ridiculously powerful. Sitting on top of the EDM, which can be queried and manipulated using LINQ, Astoria is the "RESTy POX" layer that I have always wanted. Out of the box, Astoria web data services use PUT, DELETE, POST, and GET, the way the world should work!
In addition, there is a client library that encapsulates all of the busywork of establishing the HTTP connections and serializing and deserializing. You can even create your own client classes with the same field names as the host model and the client library will take care of linking the two for you.
Bottom line: When this thing goes live, if you plan on exposing data via services, and you want to help me rid the world of WSDL, and you enjoy being able to consume simple, easy-to-use XML instead of convoluted SOAP crap.. then join with me and use Astoria for your data services!
tags: jasper astoria adoef entities orcas
links: digg this del.icio.us technorati reddit
Published May 1, 2007 Reads 12,946
Copyright © 2007 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
About Kevin Hoffman
Kevin Hoffman, editor-in-chief of SYS-CON's iPhone Developer's Journal, is Technical Chair of iPhone Developer Summit. He has been programming since he was 10 and has written everything from DOS shareware to n-tier, enterprise web applications in VB, C++, Delphi, and C. Hoffman is coauthor of Professional .NET Framework (Wrox Press) and co-author with Robert Foster of Microsoft SharePoint 2007 Development Unleashed. He authors The .NET Addict's Blog at .NET Developer's Journal.
![]() |
.NET News 05/01/07 01:57:46 PM EDT | |||
Microsoft has been getting a lot of press lately. From the announcement of their decision to Open Source some of the Dynamic Language Runtime (the tool that powers the IronPython thing in Silverlight) to the announcement that the ADO.NET Entity Framework will not ship as part of Orcas (don't even get me started on my opinion of that announcement!) - MS has been getting a lot of write-ups and a lot of blog treament - some good, some bad. |
||||
- AJAX World RIA Conference & Expo Kicks Off in New York City
- Ulitzer’s Amazing First 30 Days in Public Beta
- "Government IT Expo" to Highlight Cloud Computing and SOA
- Ulitzer vs. Ning - a Quick Review
- Improving the Efficiency of SOA-Based Applications
- Make Your Design Ideas Speak: Using UML in PowerBuilder Projects
- Ted Weissman and Lois Paul & Partners PR Firm
- SOA to Reduce Complexity?
- VMware Poaches CA Exec to Run Asia Pacific
- Cisco to Buy Tidal Software
- AJAX World RIA Conference & Expo Kicks Off in New York City
- Building the Right Project Team: The Rule of Five
- Ulitzer’s Amazing First 30 Days in Public Beta
- "Government IT Expo" to Highlight Cloud Computing and SOA
- DataDirect Data Integration Suite Features XQuery 4.0, XML Converters and Stylus Studio 2009
- Reducing Development Costs with SOA
- Macrovision White Paper Showcases Digital Entertainment Media
- Software AG Releases Tamino XML Server for SOA Interface
- Dajeil Launches Xerces/Xalan Hardware Accelerator for XML and SOA
- Ulitzer vs. Ning - a Quick Review
- AJAX World RIA Conference & Expo Kicks Off in New York City
- JSON vs XML - A Jason vs Freddie Sequel
- Processing XML with C# and .NET
- i-Technology Viewpoint: The Very Confused World of 3D and XML
- BPEL Processes and Human Workflow
- Open Source Database Special Feature: An Introduction to Berkeley DB XML
- "HP's Problem Ain't the SAP Install," Says Sun's Schwartz
- eXist - An Introduction To Open Source Native XML Database
- Digitizing the Planet: Google Earth vs MSN Virtual Earth vs MapQuest
- Product Review: Altova Enterprise Suite 2005






































