3/6/2003 4:36:53 PM
DataSets, Web Services, DiffGrams, Arrays, and InteroperabilityMatt Powell examines the issues involved in deciding whether to send DataSets to and from Web services, while also showing you all your options.
Over the last few months there has been something of a DataSet and Web services debate around MSDN: Is it or is it not okay to send DataSets to and from Web services?
First, here's a little background for those of you who are unfamiliar with the relationship between DataSets and Web services. I think it is safe to say that DataSets are the coolest part of Microsoft ADO.NET. In a lot of ways they are like having a simple, cached version of a relational database. Throw a DataAdapter in the loop and you now have seamless synchronization with your cached DataSet and your back-end SQL database. DataSets can be typed or untyped, which simply means that the schema of the data is either fixed or not. If it is fixed (typed), you get the added benefit of having the data wrapped up in strongly typed, managed classes so that rows look like a simple class with properties that map to the columns in your database.
There are a lot of other cool things about DataSets, but one particularly interesting thing is the ability for a DataSet to be passed in a SOAP message. This is possible because a DataSet is capable of being serialized into XML in such a manner that it can be deserialized back into a DataSet. So, for instance, if a Microsoft® .NET Framework Web service returns a DataSet, then a .NET Framework client will get a DataSet object as the return value when it makes the method call on the generated proxy.
Other Headlines from MSDN ...
- Using the XSD Inference Utility
- TaskVision Solution Overview: Design and Implementation
- DataSets, Web Services, DiffGrams, Arrays, and Interoperability
- Basics of Cookies in ASP.NET
- Give Your .NET-based Application a Fast and Responsive UI with Multiple Threads
Click here for more MSDN headlines
More Articles Headlines ...
- Using the XSD Inference Utility
- TaskVision Solution Overview: Design and Implementation
- Creating Assemblies On The Fly Using Code DOM
- Obtaining System Information
- CodeDOM: How to achieve code generation in .NET - Part 1