| By Kevin Hoffman | Article Rating: |
|
| May 1, 2007 03:00 PM EDT | Reads: |
13,239 |
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 13,239
Copyright © 2007 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Kevin Hoffman
Kevin Hoffman, editor-in-chief of SYS-CON's iPhone Developer's Journal, 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. |
||||
- Kindle 2 vs Nook
- Is Cloud Computing Like Teenage Sex?
- GovIT Expo Highlights Cloud Computing
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Cloud Computing Can Revitalize Your Career as Software Developer
- Ubuntu-based Open Source Linux Mint Tests KDE Version
- Yahoo! SVP Shelton Shugar to Discuss Innovation at Cloud Computing Expo
- Virtualization Journal "Readers' Choice Awards" Voting Is Now Open
- Einstein, Sharks and Clouds: IT Security in the Cloud
- Adobe Flex Developer Earns $100K in New York City
- Virtualization Expo Call for Papers Deadline December 15
- Amazon Web Services Database in the Cloud
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Is Cloud Computing Like Teenage Sex?
- 1st Annual GovIT Expo: Letter from the Technical Chair
- Ulitzer News: Search vs New Media
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Confessions of a Ulitzer Addict
- GovIT Expo Highlights Cloud Computing
- Twitter, Linked In, Ning and Ulitzer: Easy Personal Branding Strategy
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- The i-Technology Right Stuff
- Linux.SYS-CON.com Exclusive: Linus Discloses *Real* Fathers of Linux
- After Ubuntu, Windows Looks Increasingly Bad, Increasingly Archaic, Increasingly Unfriendly
- Linus' Top Ten SCO Barbs
- A Closer Look at Damn Small Linux
- Netscape Co-Founder's 12 Reasons for Growth of Open Source
- Introducing "Cooperative Linux" - Linux for Windows, No Less
- *POINT - COUNTERPOINT SPECIAL* What's Wrong with the Open Source Community?
- Where Are RIA Technologies Headed in 2008?
- Linux.SYS-CON.com Exclusive: What Would UserLinux Look Like?
- i-Technology Viewpoint: The New Paradigm of IT Buying
- Is Linux Desktop-Ready Yet...or Not?

























