<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Nicholas Allen's Indigo Blog</title><link>http://blogs.msdn.com/drnick/default.aspx</link><description>Windows Communication Foundation From the Inside</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>.Net Services November 2009 CTP</title><link>http://blogs.msdn.com/drnick/archive/2009/11/06/net-services-november-2009-ctp.aspx</link><pubDate>Fri, 06 Nov 2009 13:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9918514</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9918514.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9918514</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9918514</wfw:comment><description>&lt;p&gt;
The .Net Services team has made a &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=c80ebadf-7eb8-4a62-abcd-0b57fa3855f8#tm" mce_href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=c80ebadf-7eb8-4a62-abcd-0b57fa3855f8#tm"&gt;November 2009 CTP&lt;/a&gt; release of the SDK for their portion of the Azure Services Platform.  As mentioned over the summer, .Net Services has pared down their work on routers, queues, and relays to focus on delivering the access control service and service bus.  These two services are also what the team will be focusing on at PDC.
&lt;/p&gt;&lt;p&gt;
The service bus is an infrastructure piece for connecting together different components in a distributed application.  The access control service, now more oriented around REST, allows integration of those connected components with identity providers.  Both services have changed quite a bit as described by the &lt;a href="http://blogs.msdn.com/netservicesannounce/archive/2009/10/30/the-net-services-november-2009-ctp-breaking-changes-announcement-and-scheduled-maintenance.aspx" mce_href="http://blogs.msdn.com/netservicesannounce/archive/2009/10/30/the-net-services-november-2009-ctp-breaking-changes-announcement-and-scheduled-maintenance.aspx"&gt;breaking changes list&lt;/a&gt; from the previous CTP.
&lt;/p&gt;&lt;p&gt;
The &lt;a href="http://blogs.msdn.com/netservices/archive/2009/11/05/microsoft-net-services-november-ctp-release.aspx" mce_href="http://blogs.msdn.com/netservices/archive/2009/11/05/microsoft-net-services-november-ctp-release.aspx"&gt;announcement for the CTP&lt;/a&gt; also covers how the transition from a beta product to a production service will take place.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9918514" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Releases/default.aspx">Releases</category></item><item><title>Windows Web Services Samples</title><link>http://blogs.msdn.com/drnick/archive/2009/11/05/windows-web-services-samples.aspx</link><pubDate>Thu, 05 Nov 2009 13:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9917896</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9917896.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9917896</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9917896</wfw:comment><description>&lt;p&gt;
The &lt;a href="http://msdn.microsoft.com/en-us/library/dd430435%28VS.85%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/dd430435%28VS.85%29.aspx"&gt;Windows Web Services API&lt;/a&gt; is a native-code implementation of a subset of the SOAP web services support in WCF.  This makes Windows Web Services useful when you want to build web services but need to use C or C++ instead of managed code and need to have a minimal set of dependencies.
&lt;/p&gt;&lt;p&gt;
Many of the people on the Windows Web Services team worked on Indigo before splitting off after our first release.  This means that you'll see a lot of similar names and concepts between the two even though their intended users can be quite different.
&lt;/p&gt;&lt;p&gt;
I've had a few people ask what using Windows Web Services is like and personally I think that looking at examples is a good way to find out.  Windows Web Services has an excellent set of samples including a nicely organized &lt;a href="http://msdn.microsoft.com/en-us/library/ee354195%28VS.85%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ee354195%28VS.85%29.aspx"&gt;index of examples&lt;/a&gt;.  I'd recommend browsing through the list there starting from the service model examples and then moving to some of the deeper topics.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9917896" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Learning/default.aspx">Learning</category></item><item><title>Breaking Changes for WCF in .Net 4 Beta 2</title><link>http://blogs.msdn.com/drnick/archive/2009/11/04/breaking-changes-for-wcf-in-net-4-beta-2.aspx</link><pubDate>Wed, 04 Nov 2009 13:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9917255</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9917255.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9917255</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9917255</wfw:comment><description>&lt;p&gt;
Available for download is the list of &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=6a038bea-d85b-47bb-ad4f-82b0257103ce&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=6a038bea-d85b-47bb-ad4f-82b0257103ce&amp;amp;displaylang=en"&gt;breaking changes between beta 1 and beta 2 for WCF and WF&lt;/a&gt;.  To save you some time, here's my condensed version of the list.
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;
When adding site or machine-level collections of behaviors, those behaviors will be merged with service-level behavior configurations of the same name.  Previously, you would only get the behaviors configured directly by the application if there was a naming conflict.
&lt;/li&gt;&lt;li&gt;
The blob encoder was renamed to the byte stream encoder.  It still works the same though.  Put some bytes in one end and the exact same bytes come out the other end.
&lt;/li&gt;&lt;li&gt;
The local "in app domain" transport channel was removed.  Use named pipes instead; they're just as fast and have been available for years.
&lt;/li&gt;&lt;li&gt;
A security feature involving SAML tokens that you've probably never heard of has very slightly changed its default behavior.
&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9917255" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Indigo/default.aspx">Indigo</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Net4/default.aspx">Net4</category></item><item><title>Visual Studio and .Net 4 Beta 2 Survey</title><link>http://blogs.msdn.com/drnick/archive/2009/11/03/visual-studio-and-net-4-beta-2-survey.aspx</link><pubDate>Tue, 03 Nov 2009 13:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9916669</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9916669.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9916669</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9916669</wfw:comment><description>
&lt;p&gt;
The Visual Studio team has set up a &lt;a href="https://mscuillume.smdisp.net/Collector/Survey.ashx?Name=D10G1" mce_href="https://mscuillume.smdisp.net/Collector/Survey.ashx?Name=D10G1"&gt;survey to collect additional feedback about the Beta 2 release&lt;/a&gt;.  If you have something to say but haven't reported it on the Connect site or through other feedback channels, this would be a good opportunity to let your thoughts be known.  The window of opportunity for actually addressing the feedback in this release is closing pretty rapidly.
&lt;/p&gt;

&lt;p&gt;
The survey is about ten questions long and mostly along these lines:
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
How are you using the Visual Studio beta?
&lt;/li&gt;

&lt;li&gt;
Have you encountered any weird behaviors?
&lt;/li&gt;

&lt;li&gt;
Is the performance good?
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
You should be able to fill it out and add your own comments in less than five minutes.
&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9916669" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Net4/default.aspx">Net4</category></item><item><title>Replacing Visual Studio 2010 Beta 1 with Beta 2</title><link>http://blogs.msdn.com/drnick/archive/2009/11/02/replacing-visual-studio-2010-beta-1-with-beta-2.aspx</link><pubDate>Mon, 02 Nov 2009 13:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9916092</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9916092.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9916092</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9916092</wfw:comment><description>&lt;p&gt;
I recently helped someone out with replacing Visual Studio 2010 and .Net 4 Beta 1 with the newer Beta 2 release.  Here are a few things that I had to learn along the way.
&lt;/p&gt;&lt;p&gt;
I've done enough beta installations to know that having previous versions of the same release will cause endless headaches.  I don't even try to install over top of a beta installation first to see if it will work.  The &lt;a href="http://go.microsoft.com/fwlink/?LinkID=166199" mce_href="http://go.microsoft.com/fwlink/?LinkID=166199"&gt;Beta 2 release notes for Visual Studio 2010&lt;/a&gt; lead off with a known issue that trying to install Beta 2 without uninstalling Beta 1 first will fail.
&lt;/p&gt;&lt;p&gt;
Unfortunately, uninstalling Beta 1 wasn't successful as the installer would ask for the setup location for the TFS Object Model and then crash.  I found the solution to that in the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=167718" mce_href="http://go.microsoft.com/fwlink/?LinkID=167718"&gt;Beta 2 installation addendum&lt;/a&gt;.  Before uninstalling the main Visual Studio 2010 program, uninstall Microsoft Team Foundation Server 2010 Beta 1 Object Model.  This ran to completion and stopped the crashing in the Visual Studio uninstaller.  It looks like you only need to worry about this component if you had installed Visual Studio Team Suite.
&lt;/p&gt;&lt;p&gt;
After uninstalling Visual Studio, this left a few Beta 1 components behind.  Here's the order that worked for me:
&lt;/p&gt;&lt;ol&gt;&lt;li&gt;
Microsoft .NET Framework 4 Extended Beta 1
&lt;/li&gt;&lt;li&gt;
Microsoft .NET Framework 4 Client Profile Beta 1
&lt;/li&gt;&lt;li&gt;
Microsoft Visual C++ 2010 Beta 1 Redistributable x64
&lt;/li&gt;&lt;li&gt;
Microsoft Visual C++ 2010 Beta 1 Redistributable x86
&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;
At that point the system was clean and installing Beta 2 of Visual Studio and .Net 4 worked on the first try.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9916092" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Net4/default.aspx">Net4</category></item><item><title>Building a Data Contract Serializer Behavior</title><link>http://blogs.msdn.com/drnick/archive/2009/10/30/building-a-data-contract-serializer-behavior.aspx</link><pubDate>Fri, 30 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9915172</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9915172.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9915172</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9915172</wfw:comment><description>&lt;p&gt;
&lt;i&gt;In configuration there's a DataContractSerializer behavior that I can add to my service, but the class it uses is internal.  How do I get the same behavior programmatically?
&lt;/i&gt;&lt;/p&gt;&lt;p&gt;
The DataContractSerializer behavior is a shortcut for setting the MaxItemsInObjectGraph and IgnoreExtensionDataObject options on endpoints.  You can get a similar effect by looping over the operations in your service.
&lt;/p&gt;&lt;p&gt;
First, if the DataContractSerializer behavior is supplied as a service behavior, it applies to all of the non-metadata endpoints in your service.  To check whether an endpoint is a metadata endpoint, we look for the following things:
&lt;/p&gt;&lt;ol&gt;&lt;li&gt;
The endpoint has a ServiceMetadataBehavior in its description
&lt;/li&gt;&lt;li&gt;
The endpoint service type is IMetadataExchange
&lt;/li&gt;&lt;li&gt;
The endpoint contract name is IMetadataExchange in the namespace http://schemas.microsoft.com/2006/04/mex
&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;
Assuming that we've found a non-metadata endpoint, or the DataContractSerializer behavior is supplied as an endpoint behavior instead of a service behavior, we now scan through all of the operation descriptions on the endpoint contract.  For each operation description we scan through all of its behaviors to find a DataContractSerializerOperationBehavior.  The operation behavior is what stores the settings for the operation.
&lt;/p&gt;&lt;p&gt;
Finally, if the settings on the DataContractSerializerOperationBehavior were not already explicitly set, we change them to the values from the DataContractSerializer behavior.  By doing this check, you can apply the behavior to an endpoint without overriding any values you set manually.  This is the only step that you can't duplicate as the flag to tell where the value came from is internal.  If you explicitly set the MaxItemsInObjectGraph or IgnoreExtensionDataObject options on an operation, then you'll need to explicitly exclude those operations in the behavior you write as well.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9915172" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Indigo/default.aspx">Indigo</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Answers/default.aspx">Answers</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Service+Model/default.aspx">Service Model</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Serialization/default.aspx">Serialization</category></item><item><title>Federating from Silverlight</title><link>http://blogs.msdn.com/drnick/archive/2009/10/29/federating-from-silverlight.aspx</link><pubDate>Thu, 29 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9914591</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9914591.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9914591</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9914591</wfw:comment><description>&lt;p&gt;
I've had a few people ask whether the WCF subset in Silverlight supports message-level security.  The answer currently is not very much.  The security support is limited to basically the facilities that you'd expect to have for any other browser based application, primarily HTTPS and common browser HTTP authentication modes.
&lt;/p&gt;&lt;p&gt;
Dominick Baier though has put together a set of workarounds to enable &lt;a href="http://www.leastprivilege.com/UsingSilverlightToAccessWIFSecuredWCFServices.aspx" mce_href="http://www.leastprivilege.com/UsingSilverlightToAccessWIFSecuredWCFServices.aspx"&gt;basic support for federation from a Silverlight client&lt;/a&gt;.  The method uses some customization of the token service to simplify the protocol required and pick one of the supported authentication types plus some customization of the client application to manually insert the security headers into messages.  This gives you a simple form of bearer tokens in messages for a service implemented across two different security domains.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9914591" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Indigo/default.aspx">Indigo</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Message+Security/default.aspx">Message Security</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Silverlight/default.aspx">Silverlight</category></item><item><title>Ten More PDC 2009 Talks for Web Service Developers</title><link>http://blogs.msdn.com/drnick/archive/2009/10/28/ten-more-pdc-2009-talks-for-web-service-developers.aspx</link><pubDate>Wed, 28 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9913981</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9913981.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9913981</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9913981</wfw:comment><description>&lt;P&gt;I covered earlier the &lt;A href="http://blogs.msdn.com/drnick/archive/2009/10/16/four-weeks-between-now-and-pdc-2009.aspx" mce_href="http://blogs.msdn.com/drnick/archive/2009/10/16/four-weeks-between-now-and-pdc-2009.aspx"&gt;WCF and WF PDC talks&lt;/A&gt; that the team is doing, but there are many other groups coming to PDC to talk about web services. Here is a sample of ten of those other talks that I think WCF developers may find interesting.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Developing REST Applications with the .NET Framework&lt;/B&gt; by Don Box and Henrik Nielsen&lt;/P&gt;
&lt;P&gt;Come hear an overview of the REST principles and why REST is becoming popular beyond traditional Web applications. Learn how to write applications that produce and consume RESTful services using the .NET Framework 4 and the improvements we have planned for future versions of the .NET Framework.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Building Amazing Business Applications with Microsoft Silverlight and Microsoft .NET RIA Services&lt;/B&gt; by Brad Abrams&lt;/P&gt;
&lt;P&gt;Learn how to build n-tier Rich Internet Applications (RIA) on Silverlight by tapping the power of .NET RIA Services. Walk through an example of building an application from scratch using the pattern run-time components and tools provided by .NET RIA Services. See how it helps you write application logic to expose data and operations in a carefully controlled fashion using tools integrated into Visual Studio with support for validation, authentication, authorization and handling units of work.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Queuing and Publish/Subscribe in a Heterogeneous Environment&lt;/B&gt; by David Ingham and John O'Hara&lt;/P&gt;
&lt;P&gt;Queuing and publish/subscribe are common patterns for building loosely-coupled, distributed applications. Learn how to use Microsoft Windows Communication Foundation (WCF) the new Microsoft ASP.NET 4.0 routing service, the Microsoft .NET Service Bus, and Microsoft BizTalk Server to easily connect heterogeneous systems. We then introduce AMQP (the Advanced Message Queuing Protocol), an important new open standard for interoperable message-oriented middleware, which will reduce the friction in connecting heterogeneous clients. A real-world scenario shows AMQP in action, connecting WCF, Microsoft Excel, and Java-based clients.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;REST Services Security in Windows Azure using the Access Control Service&lt;/B&gt; by Justin Smith&lt;/P&gt;
&lt;P&gt;Come hear how easy it is to secure REST Web services with the Access Control Service (ACS). Learn about ACS fundamentals including how to request and process tokens, how to configure ACS, and how to use ACS to integrate your REST Web service with Active Directory Federation Services. Also see how to apply ACS in a variety of scenarios using a few popular programming models including the Windows Communication Foundation and Microsoft ASP.NET Model-View-Controller (MVC).&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Microsoft ASP.NET MVC 2: The New Stuff&lt;/B&gt; by Stephen Walther&lt;/P&gt;
&lt;P&gt;Come learn about the new features being introduced with ASP.NET MVC 2. Templated helpers allow associating edit and display elements with data types automatically. Areas provide a means of dividing a large Web application into multiple projects. Data annotations allows attaching metadata attributes on a model to control validation. Client validation enables form field validation without the need to perform a roundtrip to the server. Learn how these new features enable you to be more productive when building ASP.NET MVC applications.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Mastering Microsoft .NET RIA Services&lt;/B&gt; by Dinesh Kulkarni&lt;/P&gt;
&lt;P&gt;This advanced-level .NET RIA Services session provides an "under-the-covers" view of how the technology works. Come learn about common architectural patterns, key design principles, and tools to work with a variety of data access layers, application logic patterns and client-usage scenarios. Examine query and unit of work patterns, custom methods, validation, authentication and authorization metadata, authoring custom validations, and using asynchronous operations effectively on the client. Hear tips and tricks to help you get the most out of .NET RIA Services in advanced scenarios. This session assumes existing experience with .NET RIA Services.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;It's All about the Services: Developing Custom Applications for Microsoft SharePoint Server 2010 Using Microsoft ASP.NET, WCF, and REST&lt;/B&gt; by Maxim Lukiyanov&lt;/P&gt;
&lt;P&gt;Many developers use services to build and integrate applications and line-of-business systems with SharePoint. With SharePoint 2010, developers now have a wider array of options that include ASP.NET, Windows Communication Foundation (WCF), and RESTful services. Come get a demo-rich walkthrough of each option and discuss where each of the services might be appropriate and what you stand to gain by using them.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;ADO.NET Data Services: What's New with the RESTful Data Services Framework&lt;/B&gt; by Pablo Castro&lt;/P&gt;
&lt;P&gt;Join this code-heavy session to discuss the upcoming version of ADO.NET Data Services, a simple, standards-based RESTful service interface for data access. Come see new features in action and learn how Microsoft products are using ADO.NET Data Services to expose and consume Data Services to achieve their goals around data sharing.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Evolving ADO.NET Entity Framework in Microsoft .NET Framework 4 and Beyond&lt;/B&gt; by Shyam Pather and Chris Anderson&lt;/P&gt;
&lt;P&gt;Come see how the ADO.NET Entity Framework enables new capabilities to leverage multiple development approaches, for example the use of code-first, model-first, and database-first. Hear how, regardless of the development approach, developers will benefit from the Entity Framework and the deep integration with the rest of the Microsoft .NET Framework 4, such as the Microsoft ASP.NET MVC, Dynamic Data, and Windows Presentation Foundation.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Networking and Web Services in Microsoft Silverlight&lt;/B&gt; by Yavor Georgiev&lt;/P&gt;
&lt;P&gt;This session presents an overview of how to expose data to a Silverlight application by accessing SOAP Windows Communication Foundation (WCF) services and REST services. In the WCF space, we cover Silverlight 3 approaches for securing services and improving their performance and maintainability. We also cover a specific message pattern called server push, which allows you to implement scenarios such as email clients and real-time chat. In the REST space, we walk through the Silverlight 3 client HTTP stack and new functionality it offers around HTTP verbs, headers, responses, and cross-domain access and talk about future plans for networking and Web services in Silverlight.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9913981" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Conferences/default.aspx">Conferences</category></item><item><title>Finding CLR Types from Schema</title><link>http://blogs.msdn.com/drnick/archive/2009/10/27/finding-clr-types-from-schema.aspx</link><pubDate>Tue, 27 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9913404</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9913404.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9913404</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9913404</wfw:comment><description>
&lt;p&gt;
&lt;i&gt;How can I found out what CLR type a particular XML schema definition will map to when using data contracts?
&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;
Ask the type system what type it thinks the schema will map to.
&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; ClrTypeForXmlType(XmlQualifiedName xmlType)&lt;br&gt;{&lt;br&gt;    &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; XsdDataContractImporter().GetCodeTypeReference(xmlType).BaseType;&lt;br&gt;}&lt;br&gt;&lt;br&gt;&lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Main(&lt;span class="kwrd"&gt;string&lt;/span&gt;[] args)&lt;br&gt;{&lt;br&gt;    Console.WriteLine(ClrTypeForXmlType(&lt;span class="kwrd"&gt;new&lt;/span&gt; XmlQualifiedName(&lt;span class="str"&gt;"duration"&lt;/span&gt;, &lt;span class="str"&gt;"http://www.w3.org/2001/XMLSchema"&lt;/span&gt;)));&lt;br&gt;    Console.WriteLine(ClrTypeForXmlType(&lt;span class="kwrd"&gt;new&lt;/span&gt; XmlQualifiedName(&lt;span class="str"&gt;"token"&lt;/span&gt;, &lt;span class="str"&gt;"http://www.w3.org/2001/XMLSchema"&lt;/span&gt;)));&lt;br&gt;    Console.WriteLine(ClrTypeForXmlType(&lt;span class="kwrd"&gt;new&lt;/span&gt; XmlQualifiedName(&lt;span class="str"&gt;"dateTime"&lt;/span&gt;, &lt;span class="str"&gt;"http://www.w3.org/2001/XMLSchema"&lt;/span&gt;)));&lt;br&gt;    Console.WriteLine(ClrTypeForXmlType(&lt;span class="kwrd"&gt;new&lt;/span&gt; XmlQualifiedName(&lt;span class="str"&gt;"anyURI"&lt;/span&gt;, &lt;span class="str"&gt;"http://www.w3.org/2001/XMLSchema"&lt;/span&gt;)));&lt;br&gt;    Console.WriteLine(ClrTypeForXmlType(&lt;span class="kwrd"&gt;new&lt;/span&gt; XmlQualifiedName(&lt;span class="str"&gt;"decimal"&lt;/span&gt;, &lt;span class="str"&gt;"http://www.w3.org/2001/XMLSchema"&lt;/span&gt;)));&lt;br&gt;    Console.WriteLine(ClrTypeForXmlType(&lt;span class="kwrd"&gt;new&lt;/span&gt; XmlQualifiedName(&lt;span class="str"&gt;"positiveInteger"&lt;/span&gt;, &lt;span class="str"&gt;"http://www.w3.org/2001/XMLSchema"&lt;/span&gt;)));&lt;br&gt;    Console.WriteLine(ClrTypeForXmlType(&lt;span class="kwrd"&gt;new&lt;/span&gt; XmlQualifiedName(&lt;span class="str"&gt;"QName"&lt;/span&gt;, &lt;span class="str"&gt;"http://www.w3.org/2001/XMLSchema"&lt;/span&gt;)));&lt;br&gt;}&lt;br&gt;&lt;/pre&gt;
&lt;p&gt;
This produces the following list of types.
&lt;/p&gt;
&lt;p&gt;
System.TimeSpan
&lt;/p&gt;
&lt;p&gt;
System.String
&lt;/p&gt;
&lt;p&gt;
System.DateTime
&lt;/p&gt;
&lt;p&gt;
System.Uri
&lt;/p&gt;
&lt;p&gt;
System.Decimal
&lt;/p&gt;
&lt;p&gt;
System.Int64
&lt;/p&gt;
&lt;p&gt;
System.Xml.XmlQualifiedName
&lt;/p&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9913404" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Indigo/default.aspx">Indigo</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Answers/default.aspx">Answers</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Serialization/default.aspx">Serialization</category></item><item><title>Application Auto Start in IIS</title><link>http://blogs.msdn.com/drnick/archive/2009/10/26/application-auto-start-in-iis.aspx</link><pubDate>Mon, 26 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9912854</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9912854.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9912854</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9912854</wfw:comment><description>&lt;p&gt;
Application auto start is the ability for an application to be automatically started up before receiving any requests.  In addition to priming the application for the first request, application auto start is also a way to have applications that start automatically and run continuously.  One example where this is useful is service discovery, where an initial listener needs to be running to allow other services to be found.  
&lt;/p&gt;&lt;p&gt;
Windows services have supported automatically starting when the machine is booted, but web services hosted in IIS have used a message-based activation model.  There are workarounds for automatically starting and keeping an IIS service running, such as creating a second service to regularly ping your real service.  However, an integrated solution would clearly be preferable.
&lt;/p&gt;&lt;p&gt;
The IIS Application Warm Up module is a beta extension for IIS 7.5 that adds the application auto start ability.  You can get the module for Windows 7 and Windows Server 2008 R2.
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;
&lt;a href="http://go.microsoft.com/?linkid=9690096" mce_href="http://go.microsoft.com/?linkid=9690096"&gt;Application Warm Up Module for IIS 7.5 Beta- 32 bit
&lt;/a&gt;&lt;/li&gt;&lt;li&gt;
&lt;a href="http://go.microsoft.com/?linkid=9690097" mce_href="http://go.microsoft.com/?linkid=9690097"&gt;Application Warm Up Module for IIS 7.5 Beta- 64 bit
&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9912854" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Indigo/default.aspx">Indigo</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Hosting/default.aspx">Hosting</category></item><item><title>WCF Samples for .Net 4 Beta 2</title><link>http://blogs.msdn.com/drnick/archive/2009/10/23/wcf-samples-for-net-4-beta-2.aspx</link><pubDate>Fri, 23 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9911941</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9911941.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9911941</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9911941</wfw:comment><description>&lt;p&gt;
The Windows SDK samples for WCF and WF are now available updated for .Net 4 Beta 2.  These are only the samples that are new or changed in .Net 4.  If you want the complete set of existing samples as well you'll need to pick those up from the platform SDK.
&lt;/p&gt;&lt;p&gt;
You can also get online documentation for the new .Net 4 samples from MSDN.  Note that many of the navigation pages are missing or out of date.  If the documentation for a sample doesn't appear to be included in a section, look at the navigation menu on the left hand side to see if more topics are listed for the section there.  The individual sample documentation is available even though the section summaries haven't been updated yet.
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;
&lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=35ec8682-d5fd-4bc3-a51a-d8ad115a8792#tm" mce_href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=35ec8682-d5fd-4bc3-a51a-d8ad115a8792#tm"&gt;Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4.0 Beta 2
&lt;/a&gt;&lt;/li&gt;&lt;li&gt;
&lt;a href="http://msdn.microsoft.com/en-us/library/dd483346%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/dd483346%28VS.100%29.aspx"&gt;Windows Communication Foundation (WCF) Samples 4.0 Documentation
&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9911941" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Indigo/default.aspx">Indigo</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Learning/default.aspx">Learning</category></item><item><title>.Net 4 Beta 2 Really Released</title><link>http://blogs.msdn.com/drnick/archive/2009/10/22/net-4-beta-2-really-released.aspx</link><pubDate>Thu, 22 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9911192</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9911192.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9911192</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9911192</wfw:comment><description>&lt;p&gt;
Although available for download by subscribers the last few days, the second beta release of .Net 4 is now available to everyone.  You will see a number of new WCF features changed or moved around since the first beta release, but what you see now is almost everything planned for .Net 4.
&lt;/p&gt;&lt;p&gt;
If you're planning to test .Net 4 for compatibility, then I highly recommend doing that as soon as possible using this beta, preferably in the next few weeks.  It's virtually impossible to address any but the most severe issues once the release date gets close.  Waiting to test can delay getting your feedback addressed for years until the next service pack or release comes out.  Use the Connect link to the right as the best way to make sure any issues you find get recorded.
&lt;/p&gt;&lt;p&gt;
Here are the resources available.
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;
&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9f5e8774-c8dc-4ff6-8285-03a4c387c0db&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9f5e8774-c8dc-4ff6-8285-03a4c387c0db&amp;amp;displaylang=en"&gt;Microsoft .NET Framework 4 Beta 2 Web Bootstrapper
&lt;/a&gt;&lt;/li&gt;&lt;li&gt;
&lt;a href="http://go.microsoft.com/fwlink/?LinkId=166202" mce_href="http://go.microsoft.com/fwlink/?LinkId=166202"&gt;Microsoft .NET Framework Version 4 Beta 2 Readme
&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
There's one significant known issue that affects WCF services hosted in IIS.
&lt;/p&gt;&lt;p&gt;
ASP.NET and WCF applications might fail to start in IIS 7 Integrated mode
&lt;/p&gt;&lt;p&gt;
If new configuration sections are added to the application web configuration file of an ASP.NET or WCF application, the application will fail to start when it is running in IIS 7 Integrated mode.  For example, if a &lt;standardendpoints&gt; configuration section is added to the web configuration file of a WCF application, the application will not start when it is running in IIS 7 Integrated mode.  Instead, IIS 7 will return a configuration validation error, because the new configuration section is not recognized by the IIS 7 configuration system.  To resolve this issue you can download and install a &lt;a href="http://support.microsoft.com/kb/958854" mce_href="http://support.microsoft.com/kb/958854"&gt;hotfix&lt;/a&gt;.  This fix was included in Windows Vista and Server 2008 SP2.
&lt;/standardendpoints&gt;&lt;/p&gt;&lt;p&gt;
There are several other minor known issues with IIS and ASP.NET so check the readme if you're having problems with web hosted services after upgrading.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9911192" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Releases/default.aspx">Releases</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Net4/default.aspx">Net4</category></item><item><title>Visual Studio and .Net 4 Training Kit October Update</title><link>http://blogs.msdn.com/drnick/archive/2009/10/21/visual-studio-and-net-4-training-kit-october-update.aspx</link><pubDate>Wed, 21 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9910514</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9910514.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9910514</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9910514</wfw:comment><description>&lt;p&gt;
The &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=752CB725-969B-4732-A383-ED5740F02E93&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=752CB725-969B-4732-A383-ED5740F02E93&amp;amp;displaylang=en"&gt;training kit&lt;/a&gt; of materials for Visual Studio 2010 and .Net 4 has now been updated with the latest for beta 2.  The contents of the training kit include presentations, hands on labs, and demos related to the new features in the release.  Here's some of what you should expect to get for web services:
&lt;/p&gt;&lt;p&gt;
Presentations
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;
What’s New in .NET Framework 4
&lt;/li&gt;&lt;li&gt;
What’s New in Visual Studio 2010
&lt;/li&gt;&lt;li&gt;
Introduction to ASP.NET MVC
&lt;/li&gt;&lt;li&gt;
Introduction to .NET RIA Services
&lt;/li&gt;&lt;li&gt;
Introduction to “Velocity”
&lt;/li&gt;&lt;li&gt;
What’s New in Windows Workflow 4
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
Labs
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;
Introduction to ADO.NET Data Services
&lt;/li&gt;&lt;li&gt;
ASP.NET AJAX 4
&lt;/li&gt;&lt;li&gt;
Creating Plan My Night – ASP.NET MVC Application
&lt;/li&gt;&lt;li&gt;
Enhancing Plan My Night – ASP.NET MVC Application
&lt;/li&gt;&lt;li&gt;
Introduction to Workflow 4
&lt;/li&gt;&lt;li&gt;
Introduction to “Velocity”
&lt;/li&gt;&lt;li&gt;
WCF Service Discovery
&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9910514" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Net4/default.aspx">Net4</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Learning/default.aspx">Learning</category></item><item><title>ASP.NET MVC 1 Scripts on AJAX Delivery Network</title><link>http://blogs.msdn.com/drnick/archive/2009/10/20/asp-net-mvc-1-scripts-on-ajax-delivery-network.aspx</link><pubDate>Tue, 20 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9909741</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9909741.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9909741</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9909741</wfw:comment><description>
&lt;p&gt;Last week the AJAX script files included for &lt;a href="http://blogs.msdn.com/drnick/pages/technologies-of-interest-to-wcf-developers.aspx" mce_href="http://blogs.msdn.com/drnick/pages/technologies-of-interest-to-wcf-developers.aspx"&gt;ASP.NET MVC&lt;/a&gt; applications were added to the &lt;a href="http://www.asp.net/ajax/cdn/" mce_href="http://www.asp.net/ajax/cdn/"&gt;AJAX content delivery network&lt;/a&gt;. The content delivery network is a free service that provides caching support for some of Microsoft's AJAX libraries. As a developer you benefit from a network by not having to host the files yourself. As a user you benefit from a network by having access to widespread local mirrors and cached access to script files across different sites you might visit.&lt;/p&gt;

&lt;p&gt;The script locations to include for ASP.NET MVC 1 are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.js" mce_href="http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.js"&gt;http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.js&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;&lt;a href="http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftMvcAjax.js" mce_href="http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftMvcAjax.js"&gt;http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftMvcAjax.js&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Equivalent debug versions of the scripts are also available.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.debug.js" mce_href="http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.debug.js"&gt;http://ajax.microsoft.com/ajax/3.5/MicrosoftAjax.debug.js&lt;/a&gt;&lt;/li&gt;

&lt;li&gt;&lt;a href="http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftMvcAjax.debug.js" mce_href="http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftMvcAjax.debug.js"&gt;http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftMvcAjax.debug.js&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9909741" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Releases/default.aspx">Releases</category></item><item><title>Order Best Practices</title><link>http://blogs.msdn.com/drnick/archive/2009/10/19/order-best-practices.aspx</link><pubDate>Mon, 19 Oct 2009 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9908731</guid><dc:creator>Nicholas Allen</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/drnick/comments/9908731.aspx</comments><wfw:commentRss>http://blogs.msdn.com/drnick/commentrss.aspx?PostID=9908731</wfw:commentRss><wfw:comment>http://blogs.msdn.com/drnick/rsscomments.aspx?PostID=9908731</wfw:comment><description>&lt;p&gt;
&lt;i&gt;Why is setting the Order property on data members recommended when adding fields in a new version of the contract?
&lt;/i&gt;&lt;/p&gt;&lt;p&gt;
The data contract versioning best practices recommend taking three steps when adding fields in a new version of a contract.
&lt;/p&gt;&lt;p&gt;
The first recommendation is to set the IsRequired property on the new field to false.  Since older applications will not know about the new field, you obviously can’t require that the field always be present.
&lt;/p&gt;&lt;p&gt;
The second recommendation is to provide an OnDeserializing callback if the default value of the new field needs to be set.  The default value of the field- zero, false, null, or the other similar defaults for data types- may not be a valid or desired value for the field.  If the field is not required, then you will potentially see the field initialized with the default value.  Creating a callback to set the default value appropriately takes care of compatibility problems.
&lt;/p&gt;&lt;p&gt;
The third is to set the Order property on the new field so that the field appears after all of the existing data members.  If you are exchanging messages with an application that models the data using member name and namespace, then the order of the members tends not to matter.  At most, there might be efficiency issues if the application has optimized for a specific member order but you’ve forced it to do extra work by providing the members in a different order.
&lt;/p&gt;&lt;p&gt;
On the other hand, if you are exchanging messages with an application that models the data using the structure of the contract, then the order of the members may be a more fundamental assumption.  There are many applications deployed and in use that are intolerant of changing the order of members.  In this case, changing the order of members or inserting new members in between doesn’t just affect the efficiency of the application but could entirely break validation or application logic.  Always adding new fields to the end even when not strictly required is a conservative measure to promote compatibility and avoid having to deal with application bugs.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9908731" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/drnick/archive/tags/Indigo/default.aspx">Indigo</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Answers/default.aspx">Answers</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Messages/default.aspx">Messages</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Service+Model/default.aspx">Service Model</category><category domain="http://blogs.msdn.com/drnick/archive/tags/Serialization/default.aspx">Serialization</category></item></channel></rss>