<?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>ADO.NET team blog : ADO.NET vNext</title><link>http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx</link><description>Tags: ADO.NET vNext</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>ADO.NET Entity Framework Update</title><link>http://blogs.msdn.com/adonet/archive/2007/04/28/ado-net-entity-framework-update.aspx</link><pubDate>Sun, 29 Apr 2007 08:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:2320820</guid><dc:creator>dpblogs</dc:creator><slash:comments>60</slash:comments><comments>http://blogs.msdn.com/adonet/comments/2320820.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=2320820</wfw:commentRss><description>&lt;P&gt;Microsoft is deepening its investment in the ADO.NET Entity Framework as a critical piece of Microsoft’s Data Platform vision. Based on the need to align with requirements from key internal partners that are building on the Entity Framework, along with the need for a better tool experience, we have decided to ship the ADO.NET Entity Framework and Tools during the first half of 2008 as an update to the Orcas release of the .NET Framework and Visual Studio. We will continue to ship CTPs and Betas of the ADO.NET Entity Framework that align with Orcas throughout the remainder of this year. 
&lt;P&gt;Microsoft shipped the first CTP of the ADO.NET Entity Framework in August of 2006. Customers immediately grasped the power of being able to work with their data through a conceptual model, rather than in terms of database schemas optimized around storage concerns like normalization and data partitioning. In February we added the framework into the CTP and Beta 1 builds of the next version of the .NET Framework and Visual Studio codenamed Orcas. 
&lt;P&gt;We’ve collected great feedback from you in these early releases, the most significant being that we need better tools to aid in defining a data model and mapping that model to the database. Although we have tools for generating a direct mapping to the storage schema, the real power of the ADO.NET Entity Framework comes in its ability to flexibly map a variety of relational schema representations to a more appropriate conceptual application model. This has reinforced the need to have a graphical designer experience available for the ADO.NET Entity Framework. 
&lt;P&gt;At the same time, Microsoft will be leveraging the Entity Data Model in future versions of Microsoft products such as SQL Server. This Data Platform vision enables customers to leverage their investment in a common conceptual entity model across product lines. Stay tuned for announcements starting next week at &lt;A href="http://www.visitmix.com/" mce_href="http://www.visitmix.com/"&gt;&lt;FONT color=#669966&gt;Mix&lt;/FONT&gt;&lt;/A&gt; around new products building on the ADO.NET Entity Framework. 
&lt;P&gt;For more information on the ADO.NET Entity Framework and Microsoft’s Data Access Vision, see&amp;nbsp;the &lt;A class="" href="http://blogs.msdn.com/data/archive/2007/04/28/microsoft-s-data-access-strategy.aspx" mce_href="http://blogs.msdn.com/data/archive/2007/04/28/microsoft-s-data-access-strategy.aspx"&gt;Microsoft Data Access Strategy post&lt;/A&gt; on the Data blog.&amp;nbsp; 
&lt;P&gt;Mike Pizzo &lt;BR&gt;Architect, Data Programmabilty&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2320820" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+Orcas/default.aspx">ADO.NET Orcas</category><category domain="http://blogs.msdn.com/adonet/archive/tags/Entity+Framework/default.aspx">Entity Framework</category></item><item><title>Event: ADO.NET Provider Writer Tech Preview, February 6 - 8, 2007</title><link>http://blogs.msdn.com/adonet/archive/2007/01/02/event-ado-net-provider-writer-tech-preview-february-6-8-2007.aspx</link><pubDate>Wed, 03 Jan 2007 03:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1401118</guid><dc:creator>dpblogs</dc:creator><slash:comments>35</slash:comments><comments>http://blogs.msdn.com/adonet/comments/1401118.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=1401118</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;What:&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;The &lt;SPAN style="COLOR: black"&gt;ADO.NET Provider Writer Tech Preview&lt;/SPAN&gt; is an opportunity &lt;SPAN style="COLOR: black"&gt;for ADO.NET provider writers to&lt;/SPAN&gt;:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Gain an in-depth understanding of the features planned for the next major release of ADO.NET&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt; COLOR: black"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;Work with an early version of the upcoming community tech preview bits&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Review product plans and specs&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;Meet&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;the Data Programmability team&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;STRONG&gt;&lt;U&gt;&lt;EM&gt;Make sure your data source is fully functional on the next generation .NET platform&lt;/EM&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;The event is also an opportunity for Microsoft to hear YOUR feedback for this release!&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;The provider writer event held in August was a major success. &amp;nbsp;During the event, every provider writer in attendance was able to build a prototype of their provider that worked with the Entity Framework features in ADO.NET Orcas.&amp;nbsp; We're building on that momentum, covering the changes and new features added since the last event. &amp;nbsp;We have also increased our event capacity to accommodate more provider writers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;As with the prior event, this event is geared towards helping provider writers learn how to further enhance their providers to work with the next release of ADO.NET.&amp;nbsp;&amp;nbsp;The event will include overviews of the features, along with plenty of time for you to work in small labs to start enhancing your providers.&amp;nbsp; &lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Each provider writer will have their own space in our labs.&amp;nbsp; &lt;/SPAN&gt;Representatives from the development team will be available at various times during the day to answer questions that arise when working with the tech preview binaries.&amp;nbsp; Attendees will also have the option to review specs and start working with a recent drop of the binaries prior to the event.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Q:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp; Can I attend the event if I did not attend the previous event?&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;A:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp; Absolutely!&amp;nbsp; Attending the prior event is not a prerequisite.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Q:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp; If I attended the previous event, is there any reason to attend this one?&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;A:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp; Absolutely!&amp;nbsp; As with most pre-release technologies, ADO.NET Orcas has undergone changes since the last event. &amp;nbsp;We will cover these changes along with newly added features during the event, such as:&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Designer integration and command line tool support&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt; COLOR: black"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;DML queries to submit pending changes to the data store&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt; COLOR: black"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;Paging queries&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;-&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt; COLOR: black"&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;Provider manifest (supports custom functions and type semantics to provide a layer of abstraction between EDM data types and store specific data types)&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/o:p&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;There will be a more detailed schedule provided to attendees upon your attendance confirmation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;All information communicated during this event is covered by a mutual NDA&amp;nbsp;(Non-Disclosure Agreement) that we have in place with your organization (or you as an individual).&amp;nbsp;&amp;nbsp;If we do not have an NDA with you or your organization, we will ask you to sign one.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;When:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;The 3-day event will take place on Tuesday February 6th through Thursday February 8th.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Where:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;This event will take place in the customer labs on Microsoft's main &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;&lt;st1:City w:st="on"&gt;Redmond&lt;/st1:City&gt;&lt;/st1:place&gt; campus, which includes private areas for each provider writer. &amp;nbsp;We will send you a list of recommended hotels and MS Rate prices when you respond with your Mini Form (below, but you can find some basic information &lt;A title="http://msdn.microsoft.com/events/pac/hotels/default.aspx&amp;#10;blocked::http://msdn.microsoft.com/events/pac/hotels/default.aspx&amp;#10;http://msdn.microsoft.com/events/pac/hotels/default.aspx" href="http://msdn.microsoft.com/events/pac/hotels/default.aspx" mce_href="http://msdn.microsoft.com/events/pac/hotels/default.aspx"&gt;here&lt;/A&gt;.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;What is covered:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Microsoft will provide a continental breakfast and lunches on the campus during the event, as well as one dinner during the week.&amp;nbsp; The cost of travel and lodging is not covered by Microsoft.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Please Respond Quickly:&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;While we are making more spaces available for this event, capacity is still limited. &amp;nbsp;&lt;SPAN style="COLOR: black"&gt;If we receive interest from more provider writers than we can accommodate, preference will be given to vendors who have previously shipped ADO.NET providers.&lt;/SPAN&gt; &amp;nbsp;Please respond to (&lt;A title=mailto:DavidSc@microsoft.com href="mailto:DavidSc@microsoft.com" mce_href="mailto:DavidSc@microsoft.com"&gt;DavidSc@microsoft.com&lt;/A&gt;) as soon &lt;SPAN style="COLOR: black"&gt;as possible&lt;/SPAN&gt; with the information in the Response Mini-Form below. &amp;nbsp;We expect that most provider writers will want to send 2 or 3 representatives.&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Response Mini Form (one for each attendee):&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-font-family: 'Times New Roman'"&gt;Contact Name:&lt;/SPAN&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-font-family: 'Times New Roman'"&gt;IT or Business Role/Title: &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-font-family: 'Times New Roman'"&gt;Email Address: &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-font-family: 'Times New Roman'"&gt;Phone Number: &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial; mso-fareast-font-family: 'Times New Roman'"&gt;Please provide some background on your provider:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;We hope you can join us for this and look forward to your response.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Best regards,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;st1:PersonName w:st="on"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;David Sceppa&lt;/SPAN&gt;&lt;/st1:PersonName&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;ADO.NET Program Manager&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Microsoft Corporation&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;425-705-9985&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1401118" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+Orcas/default.aspx">ADO.NET Orcas</category></item><item><title>ADO.NET Orcas and Samples</title><link>http://blogs.msdn.com/adonet/archive/2006/11/07/ado-net-orcas-and-samples.aspx</link><pubDate>Tue, 07 Nov 2006 16:37:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1022913</guid><dc:creator>dpblogs</dc:creator><slash:comments>12</slash:comments><comments>http://blogs.msdn.com/adonet/comments/1022913.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=1022913</wfw:commentRss><description>&lt;P&gt;I hope you guys enjoyed the August CTP of ADO.NET vNext. As we make progress on the Orcas release of Visual Studio, the various teams –including ourselves- are working hard at integrating everything in a single product, Visual Studio Orcas. For the ADO.NET Entity Framework this means that you won’t see component-specific CTPs any more for Orcas, and instead you’ll see Orcas CTPs that have all these technologies incorporated. We may still do separate CTPs of related technologies if we see that it would help at some point in time. 
&lt;P&gt;Also, since the ADO.NET Entity Framework is in the Orcas builds, we don’t need the generic “vNext” token for it; from now on we’ll refer to it simply as &lt;B&gt;ADO.NET Orcas&lt;/B&gt;, which will include the ADO.NET Entity Framework and LINQ to ADO.NET in its various flavors (LINQ to DataSet, LINQ to SQL and LINQ to Entities). 
&lt;P&gt;The &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=C09B5A2D-EB6A-44B6-8BBD-3764A2FDA9CE&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=C09B5A2D-EB6A-44B6-8BBD-3764A2FDA9CE&amp;amp;displaylang=en"&gt;Orcas October CTP&lt;/A&gt; includes an updated version of ADO.NET. The API and the XML file formats for mapping and schemas changed a bit from the August CTP, and the one you’ll see now should stay stable for the most part (we do have a few changes coming, but they should not be very disruptive). 
&lt;P&gt;Now for the fine print: the October CTP contains a newer version of all the internal machinery of ADO.NET Entity Framework/LINQ to ADO.NET, but some of the things that go on the top of the stack won’t be there. Specifically, LINQ to Entities will not be supported in this CTP (just timing, waiting for the right compiler to come in, etc.) and the tools that go with the runtime will not be complete by then. You’ll still see VS integration for creating items and setting up projects so they work with ADO.NET and stuff like that, but automatic generation of model/mapping from a database, as well as visual editing of EDM schemas and mappings won’t be there. 
&lt;P&gt;Since we won’t have support for generating schemas and mapping files automatically in this CTP, in order to help you get started with these bits we’ve updated and extended all of the examples that we included in the August CTP so they work in the new CTP. You can use these examples as a starting point for your own applications. You can &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=c14c451d-7043-44f0-87d7-845f1c238d64&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=c14c451d-7043-44f0-87d7-845f1c238d64&amp;amp;displaylang=en"&gt;download the samples here&lt;/A&gt;. 
&lt;P&gt;I know that not having a visual editor is a bit painful; don’t worry, our tools team is working hard at tools to make sure you don’t have to go through the “fun” experience of hand-editing mapping and schema files directly in XML. (and no, the &lt;A href="http://blogs.msdn.com/adonet/archive/2006/09/27/ADONET-vNext-EDM-Designer.aspx" mce_href="http://blogs.msdn.com/adonet/archive/2006/09/27/ADONET-vNext-EDM-Designer.aspx"&gt;nice tools that we shipped on top of the August CTP&lt;/A&gt; will not work with the October CTP, because we’re including our very latest bits there and we don’t have tools that go with them yet). 
&lt;P&gt;&lt;B&gt;Which CTP should you be using?&lt;/B&gt; 
&lt;UL&gt;
&lt;LI&gt;For people who just want to get an understanding of how the ADO.NET Entity Framework, LINQ to Entities and LINQ to DataSet the best bet for now is still the &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=b68f6f53-ec87-4122-b1c8-ee24a043bf72&amp;amp;DisplayLang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=b68f6f53-ec87-4122-b1c8-ee24a043bf72&amp;amp;DisplayLang=en"&gt;August ADO.NET vNext CTP&lt;/A&gt;. &lt;/LI&gt;
&lt;LI&gt;For those who want to see the very latest in the Entity Framework runtime and can live without the tools integration that you get in the August CTP, check out the &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=C09B5A2D-EB6A-44B6-8BBD-3764A2FDA9CE&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=C09B5A2D-EB6A-44B6-8BBD-3764A2FDA9CE&amp;amp;displaylang=en"&gt;October 2006 Orcas CTP&lt;/A&gt; and download the &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=c14c451d-7043-44f0-87d7-845f1c238d64&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=c14c451d-7043-44f0-87d7-845f1c238d64&amp;amp;displaylang=en"&gt;ADO.NET Samples&lt;/A&gt;.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;As always, feedback is very welcome.&lt;/P&gt;
&lt;P&gt;Pablo Castro&lt;BR&gt;ADO.NET Technical Lead&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1022913" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>ADO.NET vNext: Entity Data Model (EDM) Designer Prototype</title><link>http://blogs.msdn.com/adonet/archive/2006/09/27/ADONET-vNext-EDM-Designer.aspx</link><pubDate>Thu, 28 Sep 2006 02:12:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:774578</guid><dc:creator>alexbarn</dc:creator><slash:comments>18</slash:comments><comments>http://blogs.msdn.com/adonet/comments/774578.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=774578</wfw:commentRss><description>&lt;P&gt;Folks,&lt;/P&gt;
&lt;P&gt;To aid brainstorming and to better understand typical developer scenarios, the ADO.NET team created an internal prototype of a designer to let developers model the ADO.NET vNext “Conceptual” layer.&lt;/P&gt;
&lt;P&gt;If you recall, Pablo Castro demoed this prototype in this &lt;A href="http://channel9.msdn.com/showpost.aspx?postid=217633"&gt;Channel 9 video&lt;/A&gt; and shortly after that we received many requests from users asking for this prototype so they could take it out for a test run. Based on the numerous requests received, we have decided to release the “ADO.NET vNext Entity Data Model Designer Prototype CTP” as an unsupported tool to showcase our upcoming ideas for ADO.NET vNext tooling.&lt;/P&gt;
&lt;P&gt;You can download the Entity Data Model (EDM) Designer Prototype from &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=74bda7b2-9ca9-4eea-a33f-31942ddc9dbe&amp;amp;displaylang=en"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;The designer in this CTP is an early prototype and only supports designing the “Conceptual” layer. The designer can also generate an Entity Data Model with 1:1 mappings from an existing database that you can use right away in your application while also graphically visualizing the “Conceptual” layer. Please take a look at the walkthroughs in the Overview document included with the EDM Designer prototype for more details. &lt;/P&gt;
&lt;P&gt;Do take it out for a test drive and let us know what you think over at the &lt;A href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=533&amp;amp;SiteID=1"&gt;ADO.NET vNext Technical Preview Forum&lt;/A&gt; on MSDN.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;More ADO.NET vNext Resources:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Pablo’s announcement about &lt;A href="http://blogs.msdn.com/adonet/archive/2006/08/15/701479.aspx"&gt;the ADO.NET vNext August CTP&lt;/A&gt; has tons of great information about this exciting new technology.&lt;/LI&gt;
&lt;LI&gt;Plenty more links to whitepapers, Chanel 9 videos, screencasts and blog posts from &lt;A href="http://msdn.microsoft.com/data/ref/adonetnext/default.aspx"&gt;ADO.NET vNext reference page on the MSDN Data Developer Center&lt;/A&gt;.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Sanjay Nagamangalam&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=774578" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>Entity Mapping in ADO.NET vNext</title><link>http://blogs.msdn.com/adonet/archive/2006/09/13/752865.aspx</link><pubDate>Thu, 14 Sep 2006 01:24:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:752865</guid><dc:creator>Adya</dc:creator><slash:comments>14</slash:comments><comments>http://blogs.msdn.com/adonet/comments/752865.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=752865</wfw:commentRss><description>&lt;P align=center&gt;&lt;U&gt;&lt;/FONT&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;Hi folks,&lt;BR&gt;&lt;BR&gt;My name is &lt;A href="http://research.microsoft.com/~adya"&gt;Atul Adya&lt;/A&gt; and I am a software architect in the ADO.NET team. After working on persistent object stores, object caching, distributed file systems, and diagnostics in wireless networking, I have been spending time on a very important problem faced by programmers - reshaping/transformation/mapping of data from one data model to another. &lt;/P&gt;
&lt;P&gt;We have been designing and implementing an innovative and powerful solution to address the mapping problem in ADO.NET vNext. In this blog post, I will describe the overall design of this entity mapping architecture. You can play with our mapping technology by downloading the &lt;A href="http://blogs.msdn.com/adonet/archive/2006/08/15/701479.aspx"&gt;CTP bits&lt;/A&gt;.&lt;BR&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;B&gt;&lt;FONT size=4&gt;1. Model to Model Mapping in ADO.NET vNext&lt;/FONT&gt;&lt;/B&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;Developers typically use object-oriented technology for writing applications and they use relational databases to store their data. However, because of the "impedance mismatch" between the data models of these two technologies, there is a considerable amount of effort that is spent in many projects to address this mismatch. To bridge this gap, a number of Object-Relational (OR) Mapping solutions have been invented that lessen the burden on the programmer.&lt;BR&gt;&lt;BR&gt;In addition to applications, a number of data services can also take advantage of a higher level of abstraction offered by a conceptual model of the data rather than the store model (See &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs05/html/nxtgenda.asp"&gt;MSDN article&lt;/A&gt;). To cater to the need of applications&lt;B&gt; and &lt;/B&gt;data services, ADO.NET vNext provides a more general mapping solution - OR mapping being just one, albeit a very important, instance of the general mapping solution. ADO.NET vNext provides a conceptual model - the Entity Data Model (EDM) - that allows applications and data services to model, communicate and manipulate data at a higher level of abstraction. Thus, the bridging technology that we need is one that maps store side concepts (i.e., relations) to a higher level of abstraction, i.e., the EDM.&lt;BR&gt;&lt;BR&gt;Before we dive into the mapping strategy in ADO.NET vNext, it is important to recall the different layers in the stack - the Object Services layer, the Map Provider layer and the Store layer. The ADO.NET mapping approach is different than previous OR mappings in several ways: &lt;BR&gt;&lt;BR&gt;(1) It separates the Map Provider layer (described by the EDM) from the Object Services layer where CLR objects are built. The mappings between these layers are relatively trivial - they are essentially one-to-one mappings although we do take care of relationship and navigation property fix-ups in this mapping component.&lt;BR&gt;&lt;BR&gt;(2) The EDM to the store mapping component does the &lt;B&gt;powerful structural transformation between the EDM layer and the store layer.&lt;/B&gt; It allows developers to map using different inheritance strategy mappings, split entities across tables, mapping with equality filter conditions, etc.&lt;BR&gt;&lt;BR&gt;(3) As discussed below, the mapping transformations are internally expressed as eSQL views which provide significant benefits for querying and update.&lt;BR&gt;&lt;BR&gt;Actually, the mapping engine that transforms between the EDM and store space performs mappings from one EDM model to another EDM model - note the store can be modeled in EDM terms. Our current implementation assumes that the store has a flat relational model but that restriction can be easily removed in later versions.&lt;BR&gt;&lt;BR&gt;In this blog, I will focus on the &lt;I&gt;&lt;B&gt;EDM-to-EDM mapping engine (a.k.a. Entity Mapping engine)&lt;/B&gt;&lt;/I&gt;. This engine takes the CSDL, SSDL and MSL files and produces mapping information for consumption by the update and query pipelines. Recall that these XML files have the following information:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;I&gt;CSDL file:&lt;/I&gt; The Entity Data Model for the application&lt;/FONT&gt; 
&lt;LI&gt;&lt;I&gt;SSDL file:&lt;/I&gt; The database as expressed in EDM terms&lt;/FONT&gt; 
&lt;LI&gt;&lt;I&gt;MSL file:&lt;/I&gt; The mapping information about how various entity/association sets and tables connect with each other.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;BR&gt;&lt;U&gt;&lt;B&gt;&lt;FONT size=4&gt;2. Where we came from?&lt;/FONT&gt;&lt;/B&gt;&lt;/U&gt;&lt;BR&gt;&lt;BR&gt;The main goal of the mapping infrastructure in ADO.NET vNext is to translate various operations from the application space to the relational space:&lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;I&gt;Queries:&lt;/I&gt; Given an eSQL or LINQ query in EDM terms, the mapping engine must provide information to allow the query to be translated into store terms and shipped to the database server.&lt;/FONT&gt; 
&lt;LI&gt;&lt;I&gt;Updates:&lt;/I&gt; Given a set of objects that have been inserted, modified or deleted in the object cache, the mapping engine needs to have sufficient information to help transform these changes into INSERT, DELETE and UPDATE database statements.&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Along with these requirements, the mapping engine has to help in propagating server-generated keys and other server-generated values to the EDM space. Furthermore, it also has to provide sufficient information to allow concurrency control checks to be performed.&lt;BR&gt;&lt;BR&gt;When we started looking at this problem, we realized that there were a number of important (and sometimes conflicting) requirements that made the problem quite difficult:&lt;BR&gt;&lt;BR&gt;&lt;B&gt;a) Flexibility of the mappings:&lt;/B&gt; Looking at various scenarios, we observed that people really wanted to map application data to tables in very powerful ways. With a large amount of data present in existing databases, we cannot tell users to change the data or add/remove columns according to the needs of the mapping engine! &lt;BR&gt;&lt;BR&gt;For non-legacy database scenarios, existing data is not issue. However, developers may want to have really flexible mappings to the store, i.e., decoupling the thinking of how the store is laid out and how the entities are modeled is important. For example, developers may want to model complex inheritance hierarchies and then map them according to a variety of mapping strategies to database tables, i.e., the three well-known strategies and combinations of them. An enterprise-quality mapping engine needs to be powerful enough to support a large number of scenarios.&lt;BR&gt;&lt;BR&gt;&lt;B&gt;b) Robustness of design: &lt;/B&gt;Given the plethora of desired scenarios, one way to handle them is to write code that explicitly handles all the different cases. To our knowledge, most OR mapping solutions use this strategy. Even though this approach can be made to work for queries, it is much more difficult to make it work for &lt;B&gt;&lt;I&gt;updates to cached entities and set-based/DML updates.&lt;/I&gt;&lt;/B&gt; Since every scenario has to be carefully programmed for, the system can become somewhat fragile as more and more scenarios are supported by the mapping solution - clearly, this is undesirable. Thus, robustness of the design as the scenarios scale is critical. &lt;BR&gt;&lt;BR&gt;Furthermore, a "case-by-case" programmed design has huge development and maintenance costs - every scenario has to be explicitly programmed for and when a new scenario is added, it needs to be accounted for in the code base. For example, if there is support for the Table-Per-Hierarchy mapping scenario and we want to allow combination of this strategy with a different inheritance approach, we have to explicitly code it. Thus, it is undesirable to have a solution that supports different scenarios via case-by-case reasoning.&lt;BR&gt;&lt;BR&gt;&lt;B&gt;c) Correct round-tripping of data:&lt;/B&gt; We need to maintain fidelity of the EDM data as changes are made to it, i.e., when an application's changes in the EDM space are propagated to the store and back to the EDM space, the data should be re-created in full fidelity (assuming no concurrent modifications). We need correctness guarantees in the design to ensure that such data round-trips. &lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;U&gt;&lt;B&gt;&lt;FONT size=4&gt;3. To View or not to View - that is the question&lt;/FONT&gt;&lt;/B&gt;&lt;/U&gt;&lt;BR&gt;&lt;BR&gt;To address these concerns, we took a radically different approach, thanks to our colleagues in the Database Group at Microsoft Research - Sergey Melnik and Phil Bernstein have been working on these issues for the past few years (see &lt;A href="http://research.microsoft.com/~melnik/"&gt;http://research.microsoft.com/~melnik/&lt;/A&gt;&amp;nbsp; for the latest papers). &lt;BR&gt;&lt;BR&gt;One of the key insights that we had was that there are two aspects to mapping - the transformation/shaping aspects (e.g., mapping am entity to multiple tables) and the runtime aspects (e.g., translating queries, updates, concurrency control). Wouldn't it be a good idea if we could separate the two problems? Well, we did precisely that. The shaping issues are handled by the&lt;B&gt; View Generator (a.k.a. Mapping Compiler&lt;/B&gt;) and the rest is handled by the runtime. The View Generator (as we see later why it is called so) takes the input Mapping Specification Language or MSL files and converts them into &lt;B&gt;Mapping Views&lt;/B&gt; that are easily consumable by the update and query pipelines.&lt;BR&gt;&lt;BR&gt;Let us consider queries first. To handle data shaping from tables to the rich EDM model, we can express the mapping as a&lt;B&gt; Query Mapping View or QM View that expresses entity sets and association sets in terms of tables using eSQL&lt;/B&gt;&lt;I&gt;.&lt;/I&gt;&lt;BR&gt;&lt;BR&gt;For example, suppose entity type ECustomer is a subtype of entity type EPerson and we have an entity set EPersons of type EPerson, i.e., it can contain EPerson or ECustomer entities. Suppose this entity set is mapped to two tables SPersons and SCustomers such that the former contains all the persons and the latter contains all the customers - this inheritance strategy is also known as Table-Per-Concrete-Class or Horizontal Partitioning. Thus, we have the following (key fields are underlined; ECustomer has an extra field - "credit").&lt;BR&gt;&lt;BR&gt;&lt;I&gt;EDM Types:&lt;/I&gt; EPerson(pid, name) ECustomer(credit) &amp;lt;inherits from&amp;gt; EPerson&lt;BR&gt;&lt;I&gt;Tables:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/I&gt;&amp;nbsp;SPersons(pid, name) SCustomers(pid, name, credit)&lt;BR&gt;&lt;BR&gt;For this scenario, the QM View for EPersons is:&lt;BR&gt;&lt;BR&gt;&lt;B&gt;&lt;FONT size=2&gt;SELECT VALUE&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CASE WHEN _from0 THEN EPerson(p.pid, p.name)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ELSE ECustomer(p.pid, p.name, p.credit)&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; END&lt;BR&gt;FROM&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (SELECT pid, name, null, true as _from0 FROM SPersons&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UNION ALL&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT pid, name, credit, null as _from0 FROM SCustomers) as p&lt;BR&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;BR&gt;Essentially, this view is saying that EPersons can be populated from SPersons and SCustomers by performing a union of the tables and then constructing EPerson entities for tuples that came from the SPersons table and ECustomer entities for tuples from the SCustomers table (using the _from0 "artificial" field to determine where the tuple came from).&lt;BR&gt;&lt;BR&gt;Thus, as explained by Murali in an &lt;A href="http://blogs.msdn.com/adonet/archive/2006/08/21/710862.aspx"&gt;earlier posting&lt;/A&gt;, when the query pipeline receives a query&lt;BR&gt;&lt;BR&gt;&lt;B&gt;&lt;FONT size=2&gt;SELECT VALUE p FROM EPersons AS p WHERE p.pid = 17&lt;BR&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;/B&gt;it substitutes EPersons with the view above (i.e. "view unfolding") so that all the "leaf" expressions in the query tree are in database terms - at this point, the query pipeline can refactor the query tree such that the relational operators are at the bottom of the tree (which can be shipped off to the server).&lt;BR&gt;&lt;BR&gt;Thus, query mapping views give us a nice way of thinking about the problem in a r, i.e., the whole shaping/transformation exercise has been reduced to coming up with the appropriate eSQL view! Furthermore, shaping has nothing to do with the runtime artifacts like delay loading, concurrency control, etc.&lt;BR&gt;&lt;BR&gt;This declarative approach gives us a lot of power, composability, flexibility, elegance, and, most importantly, the ability to reason about the correctness of the approach in a very clean manner. As stated above, from the query pipeline's perspective, mapping has just been reduced to view unfolding - there are no complicated mapping data structures or state management to keep track of mapping information! Isn't that cool? It gets even better. Read on … &lt;BR&gt;&lt;BR&gt;&lt;U&gt;&lt;B&gt;&lt;FONT size=4&gt;4. Fine! That was a nice Jedi mind trick. But what about updates? &lt;/FONT&gt;&lt;/B&gt;&lt;/U&gt;&lt;BR&gt;&lt;BR&gt;If we are expressing entity sets as views on tables, then propagating updates to the store essentially boils down to solving the well-known &lt;B&gt;View Update&lt;/B&gt; problem in databases. Yay! We can leverage all the knowledge from that field and we are done. Well, not quite. It turns out that there are a number of limitations on view updates, e.g., most systems allow updates only to single-table views, or at best to a single table in a multi-table view - if you modify a view involving a join of two tables, databases typically do not allow updates to both tables. Of course, in mapping scenarios, a user may modify multiple fields of an entity that has been mapped to multiple tables - it is unacceptable to inform the user that such modifications are disallowed. Thus, the view update solution does not work for our environment.&lt;BR&gt;&lt;BR&gt;So the question is - how do we handle translation of updates from the EDM space to the Store space in a declarative manner? We solve this problem by introducing a novel concept of &lt;B&gt;Update Mapping Views or UM Views&lt;/B&gt;. These are views in which &lt;B&gt;&lt;I&gt;tables are expressed in terms of entity sets and association sets&lt;/I&gt;&lt;/B&gt;. Essentially, they are the "reverse" of the QM Views. For example, for the EPersons, SPersons, SCustomers example discussed above, the UM View for SPersons is (for SCustomers, the view is similar):&lt;BR&gt;&lt;BR&gt;&lt;B&gt;&lt;FONT size=2&gt;SELECT VALUE SPerson(p.pid, p.name)&lt;BR&gt;FROM EPersons as p&lt;BR&gt;WHERE p IS OF (ONLY EPerson)&lt;BR&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;BR&gt;The UM View simply says that the SPersons table contains all entities of type EPerson - similarly, for SCustomers. So what do we do with modifications of entities? Well, the modification problem for the above example is - given changes to EPersons, propagate them to SPersons and SCustomers. That is, given changes to the "base set" EPersons we need to propagate the updates to the "view" SPersons and the "view" SCustomers. Wait a minute - that is nothing but the &lt;B&gt;Materialized View Maintenance&lt;/B&gt; problem in databases!! Unlike the View Update problem, Materialized View Maintenance is not as restrictive, e.g., you can have a single change to the base relation be propagated to multiple materialized views (recall that this would have corresponded to a multi-table update if we used the View Update approach on the QM Views).&lt;BR&gt;&lt;BR&gt;Thus, by having "reverse" views we have converted our View Update problem with limited solutions into the much more flexible View Maintenance problem. Not only do we gain flexibility, it turns out that we can use the knowledge of &lt;B&gt;Incremental Materialized View Maintenance algorithms&lt;/B&gt; that have been developed in the literature for propagating small changes in the EDM space to the table space. Of course, these algorithms were developed for the relational model for very general scenarios. Instead, we had to develop optimized algorithms for a non-relational model (i.e., the EDM) for our specific settings (i.e., we have keys on both sides, etc).&lt;BR&gt;&lt;BR&gt;Thus, in the above example, given a change to the EPersons entity set, we can propagate the changes to the SPersons or SCustomers table depending on the type of the entity (how update propagation is done is something we will blog later).&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;U&gt;&lt;B&gt;&lt;FONT size=4&gt;5. Data Roundtripping&lt;/FONT&gt;&lt;/B&gt;&lt;/U&gt;&lt;BR&gt;&lt;BR&gt;Our bidirectional views are generated in such a manner that data can roundtrip from the EDM to the store and back. To achieve this goal, the QM Views and UM Views need to be inverses of each other - let's see what that means. Suppose that an entity set E is spread across tables S1, S2, … Sn. That is,&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-TOP: 1px" align=center&gt;&lt;B&gt;E = QMView(S1, S2, …Sn)&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN-TOP: 1px"&gt;We know that S1 = UMView1(E), S2 = UMView2(E), Sn = UMViewn(E).&lt;BR&gt;(Note that he above views may involve other entity or association sets, e.g., S2 = UMView2(E2). For simplicity, we are ignoring such a scenario in this discussion)&lt;BR&gt;So we get the round-tripping condition that must be satisfied for the views related to E:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-TOP: 1px" align=center&gt;&lt;BR&gt;&lt;B&gt;E = QMView(UMView1(E), UMView2(E), … UMViewn(E))&lt;BR&gt;&amp;nbsp;&lt;/B&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-TOP: 1px"&gt;That is, applying the update mapping views on E (sending the data to the store) and then applying the query mapping views on that result (querying data in E from the store) must yield E itself. The views used in ADO.NET vNext must not violate this condition. For the example above, it must be the case that:&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-TOP: 1px" align=center&gt;&lt;BR&gt;&lt;B&gt;EPersons = QMView(SPersons, SCustomers)&lt;BR&gt;EPersons = QMView(UMView1(EPersons), UMView2(EPersons))&lt;BR&gt;&amp;nbsp;&lt;/B&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-TOP: 1px"&gt;The reader can verify that this is indeed true.&lt;BR&gt;&lt;BR&gt;&lt;U&gt;&lt;B&gt;&lt;FONT size=4&gt;6. Summary&lt;BR&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/U&gt;&lt;BR&gt;To summarize our approach:&lt;BR&gt;&lt;BR&gt;1.&amp;nbsp; We separate out shaping/transformation issues from runtime aspects&lt;BR&gt;&lt;BR&gt;2.&amp;nbsp; We use a declarative style for expressing these transformations - for queries, we use Query Mapping Views that express entity/association sets in terms of tables. For updates, tables are expressed in terms of entity/association sets using Update Mapping Views.&lt;BR&gt;&lt;BR&gt;3.&amp;nbsp; During query execution, translation of an EDM query to the store space is done by view unfolding the Query Mapping views.&lt;BR&gt;&lt;BR&gt;4.&amp;nbsp; During update propagation, translation of entity changes to tables is performed by using incremental view maintenance algorithms over the Update Mapping Views.&lt;BR&gt;&lt;BR&gt;5.&amp;nbsp; The bidirectional views declaratively say that data will roundtrip from the EDM to the store and back (assume a correct implementation :)&lt;BR&gt;&lt;BR&gt;The component that converts the MSL files into eSQL views for each table, entity set, and association set is called the View Generator or Mapping Compiler.&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;&lt;U&gt;&lt;B&gt;&lt;FONT size=4&gt;7. Future posts&lt;/FONT&gt;&lt;/B&gt;&lt;/U&gt;&lt;BR&gt;&lt;BR&gt;Hopefully, this post has piqued your interest about the mapping technology. There are a lot of things that I did not talk about today. They are topics for future postings:&lt;BR&gt;&lt;BR&gt;&lt;I&gt;1. Generation of views&lt;/I&gt; - You must be wondering how we get these views. Does the end-user write them? That seems painful! The answer is - we generate them from the XML mapping specification given to us. How we do it is actually quite interesting.&lt;BR&gt;&lt;BR&gt;&lt;I&gt;2. How does one express mappings?&lt;/I&gt; We have an XML format for specifying mappings (in an MSL file). It turns out that we have formal semantics for each of those mapping concepts in the MSL file. Understanding these semantics really helps in better understanding the mapping input and various mapping issues.&lt;BR&gt;&lt;BR&gt;&lt;I&gt;3. Validation of input mappings -&lt;/I&gt; We do extensive validation on the MSL file to make sure that the mapping is valid, i.e., to ensure data can roundtrip from the EDM to the Store and back. There is a ton of interesting constraint propagation work that we have done there.&lt;BR&gt;&lt;BR&gt;&lt;I&gt;4. Capabilities of mappings -&lt;/I&gt; The power of ADO.NET vNext's mapping capabilities can be appreciated by looking at some examples and the corresponding views.&lt;BR&gt;&lt;BR&gt;&lt;I&gt;5. Details on the update pipeline &lt;/I&gt;- How does propagation of updates happen via view maintenance? There are a number of interesting and subtle issues in the update pipeline that one has to take care of.&lt;BR&gt;&lt;BR&gt;Please let us know if you have questions, criticisms, problems w.r.t. our Entity Mapping approach.&lt;BR&gt;Thanks.&lt;BR&gt;&lt;BR&gt;Atul&lt;BR&gt;&lt;BR&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=752865" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>ADO.NET vNext Provider Writer Event Summary</title><link>http://blogs.msdn.com/adonet/archive/2006/08/25/724491.aspx</link><pubDate>Fri, 25 Aug 2006 16:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:724491</guid><dc:creator>dpblogs</dc:creator><slash:comments>7</slash:comments><comments>http://blogs.msdn.com/adonet/comments/724491.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=724491</wfw:commentRss><description>&lt;P&gt;The ADO.NET team recently held an event for ADO.NET provider writers. Representatives from DataDirect, IBM, MySQL, SQLite and Sybase converged on Microsoft headquarters in Redmond to attend the three day event.&lt;/P&gt;
&lt;P&gt;The goal for the event was to help provider writers understand how they can enhance their providers to support the next version of ADO.NET and to get feedback on our provider model. Each provider writer had their own lab space to work on their providers. Members of the ADO.NET team presented material on the provider model and query tree structure to the attendees and answered various questions on those topics.&lt;/P&gt;
&lt;P&gt;The event was a major success. Representatives from five provider writers attended. By the end of the event, each provider writer was able to execute basic queries using all three layers in the &lt;A href="http://blogs.msdn.com/adonet/archive/2006/08/15/701479.aspx"&gt;ADO.NET vNext Entity Framework&lt;/A&gt; - the Map Provider, Object Services and LINQ to Entities.&lt;/P&gt;
&lt;P&gt;Here are a couple quotes taken from blog posts of two of the attendees:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;"It's clear Microsoft has made a big commitment to supporting 3rd party providers in the new Entity Framework. ... When the next LINQ CTP hits the streets, I'll be releasing a corresponding SQLite alpha provider for it."&lt;/EM&gt; – Robert Simpson, SQLite. See the SQLite blog post about the event here: &lt;A href="http://sqlite.phxsoftware.com/blogs/sqlite/archive/2006/08/03/1725.aspx"&gt;http://sqlite.phxsoftware.com/blogs/sqlite/archive/2006/08/03/1725.aspx&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;BR&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;"Microsoft's strenuous efforts to closely involve third-party vendors provides a better foundation for the Entity Framework."&lt;/EM&gt; – Jonathan Bruce, DataDirect. See the DataDirect blog post about the event here: &lt;A href="http://jonathanbruceconnects.com/jonathan_bruce/2006/08/recap_adonet_providerpalooza.html"&gt;http://jonathanbruceconnects.com/jonathan_bruce/2006/08/recap_adonet_providerpalooza.html&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;We look forward to working more closely with provider writers going forward and will keep the community informed of our progress.&lt;/P&gt;
&lt;P&gt;David Sceppa&lt;BR&gt;ADO.NET Program Manager&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=724491" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>Queries in ADO.NET vNext</title><link>http://blogs.msdn.com/adonet/archive/2006/08/21/710862.aspx</link><pubDate>Mon, 21 Aug 2006 18:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:710862</guid><dc:creator>dpblogs</dc:creator><slash:comments>21</slash:comments><comments>http://blogs.msdn.com/adonet/comments/710862.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=710862</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Hi folks,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;There’s been a lot of interest in the ADO.NET CTP that we posted a few days back, and lots of questions about the internal details. I wanted to briefly describe how we handle queries in the ADO.NET CTP – and hopefully address some of your questions in this area. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The Lay of the Land&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The ADO.NET VNext stack provides for two broad programming surfaces – the Object Services layer and the Map Provider layer – in addition to the existing provider programming surface. The Map Provider is a regular .NET data provider that accepts connections, commands, and returns DataReaders. The Map Provider allows you to describe your store data in terms of a conceptual model (the EDM) and allows you to specify client-side views over your store tables.&amp;nbsp; The query language for the Map Provider is Entity SQL (eSQL).&amp;nbsp; &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The Object Services layer provides a strongly typed object abstraction, and allows you to program and reason in terms of programming language objects. The Object Services layer provides you a cache of objects, allows you to perform CRUD operations on these objects, allows you to query your data via LINQ or eSQL. The Object Services layer is stacked on top of the Map Provider, and gives you rich objects on top of the client views described by the&lt;SPAN style="COLOR: #1f497d"&gt; &lt;/SPAN&gt;conceptual model&lt;SPAN style="COLOR: #1f497d"&gt; &lt;/SPAN&gt;over store tables. &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;How do I express queries?&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;At the Object Services layer, you have a choice of expressing queries either via LINQ or via eSQL. At the Map Provider, you need to express queries in terms of eSQL. We may also allow – in a future version – queries to be specified in terms of canonical query trees (CQTs). &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Ok, what are Canonical Query Trees (CQTs)?&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;We use Canonical Query Trees (CQTs) as a declarative representation for queries in ADO.NET. We use this tree representation for multiple purposes – as a common representation for all queries (regardless of how they were expressed); as a provider-neutral mechanism of communicating queries to stores (since every store has its own dialect of SQL); and in the future, as a means of programmatically constructing queries, especially in tooling and query-editing scenarios. More details on CQTs in a follow-on post&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The Query Flow&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;A user query is&lt;B&gt;&lt;I&gt;&lt;SPAN style="COLOR: #1f497d"&gt; &lt;/SPAN&gt;&lt;/I&gt;&lt;/B&gt;always converted into a CQT. If the query is expressed in eSQL, the eSQL parser is invoked, the query is validated against the conceptual model, and then converted into a CQT. If the query is expressed in LINQ terms, the LINQ expression tree is converted into a CQT. All further processing of the query happens on the CQT. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;We first “expand” (unfold) all references to client views (aka Conceptual Entity Sets) in the query. The client views themselves are simply queries against one or more Store-level Entity Sets (aka tables) and, even possibly other client views; and the view expansion process is identical to what databases do with database views. These views are generated by a mapping compiler (a subject for another blog post – but suffice it to say the mapping compiler is very powerful, and handles a number of different mappings in a very clean fashion) based on a user-supplied mapping specification. The query now targets store tables, but may have references to one or more conceptual types (entity types, complex types etc.).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The query is then run through a number of transformations to produce one or more queries that can be executed at the store. Two of the most important pieces here are the elimination of EDM type constructs (entity types, row types etc.) and the elimination of nesting operations from the query – these require some significant tweaking of the original queries – if you see some funny constants (‘0X1X2X’ etc.) in the generated SQL queries, this is where they come from. We need these pieces of information – as well as some information that we maintain outside the query - to tell us how to reassemble results later. At the end of this stage, we have queries that are entirely in terms of what the store providers support (ie) flat relational queries. We perform a few simplification operations on the query to produce “better” and more compact SQL. In the bits that you’re seeing now, some of this may still be a bit raw, but we’re working on them, and by RTM, we’ll be much better in terms of the queries we generate. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;We now have one or more queries (in the form of CQTs) that can be executed by the underlying store provider. Each of these is then sent to the provider to convert into its native SQL dialect (more precisely, the provider provides a mechanism to produce a native DbCommand object from the query tree). We had a ProviderFest &amp;nbsp;earlier this month, where we had provider writers for a number of databases come in to Redmond for a couple of days, and work with us on how to produce their native dialects of SQL from the CQTs – and all of them were able to get their apps up and running very quickly against their respective databases via ADO.NET. We anticipate that by RTM, many databases would have upgraded their providers to plug in easily into ADO.NET VNext.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The queries are then executed, and the results from the different readers are then reassembled (using information that’s been gathered earlier) to produce a single data reader. If the query originated at the Object Services layer, then there’s one additional step. The records from the DataReader are transformed into objects – we call this object materialization – based on the mapping information maintained by our metadata system. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp; Note that query execution happens entirely at the store&lt;/SPAN&gt;&lt;/I&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;. The client side performs result assembly (shaping operations, really), and object materialization; but the real guts of query execution is entirely in the store. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;So why eSQL?&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;SQL has been around for a number of years, and there’s a vast number of folks that are familiar with it. SQL’s great for relational systems, but starts getting a little hairier for more advanced concepts. Large parts of SQL are still interesting though; so we designed Entity SQL (aka eSQL) to be an extension of SQL – very SQL-like in most cases, but more appropriate for the conceptual model (EDM) we’re building. We borrowed heavily from SQL-99, OQL, and earlier internal Microsoft incarnations like WinQL. You’ll see most of your friendly SQL constructs (select, from, where), some new EDM-specific constructs (type constructors, multiset constructors, relationship navigation etc.). More eSQL details in a follow-on post. &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;I mentioned earlier that every database has a slightly different variant of SQL that it supports. On similar lines, every database supports a slightly different set of builtin functions, and a different set of builtin types. We tried hard to keep the eSQL language agnostic about the builtin functions supported by a database. In fact, eSQL has no builtin functions – it has a very small number of builtin operators (things like +, -, &amp;lt;, &amp;gt;, = etc.). Instead, we rely on a Provider Manifest (I’ll talk about this in a follow-on post) to define the set of builtin functions and builtin types supported by the provider, and these are automatically available to you when you write eSQL queries. We also have the notion of a small set of canonical functions (I’ll describe this in a later post as well) that every provider is expected to support; and you can use these to write provider-independent queries. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;When do I use LINQ? When do I use eSQL?&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;If you’re using the Map Provider, you will need to use eSQL. If you’re using the Object Services layer (Query&amp;lt;T&amp;gt;), you have a choice of using eSQL or LINQ. In a future release, we may also allow queries to be specified in terms of (publicly constructible) CQTs.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Some queries are easier to express in eSQL than in LINQ; some queries are easier to express in LINQ. LINQ queries give you stronger compile-time checking and IntelliSense. On the other hand, eSQL may be more appropriate for dynamic queries. Some constructs of the EDM, and some provider-specific constructs can only be exercised via eSQL. We expect to add a lot more capabilities to eSQL as part of future releases – including query-based DMLs, analytic functions, better aggregation (cube/rollup) support, &amp;nbsp;native span support etc. At the end of the day, however, use the approach that is most suitable for your application. As I described earlier, both eSQL and LINQ queries are first converted into a common tree representation (the CQT) - from that point on, all processing is identical. You can mix eSQL and LINQ queries in your application logic&amp;nbsp;without any trouble.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;I hope that gave you all a somewhat reasonable understanding of the way we handle queries in ADO.NET. We’d love to hear what you think. What are we doing right? What parts can we do better? Where are we just plain wrong ? &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;We also want to get your thoughts on some of these questions. When would you use eSQL, and when would you use LINQ? What kind of constructs do you think are missing from eSQL? Would you like to program against CQTs directly (ie) would you want to build queries directly in terms of CQTs? &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Things I will talk about in subsequent posts&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol"&gt;·&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;eSQL&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol"&gt;·&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;CQTs&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol"&gt;·&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Provider Manifests&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol"&gt;·&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 7pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;More details on the query pipeline&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Thanks&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Murali&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=710862" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>Announcing: The ADO.NET vNext August CTP</title><link>http://blogs.msdn.com/adonet/archive/2006/08/15/701479.aspx</link><pubDate>Tue, 15 Aug 2006 22:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:701479</guid><dc:creator>alexbarn</dc:creator><slash:comments>132</slash:comments><comments>http://blogs.msdn.com/adonet/comments/701479.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=701479</wfw:commentRss><description>&lt;P&gt;A couple of months ago we committed to shipping a very early technology preview of the ADO.NET Entity Framework and the LINQ integration in ADO.NET, and we said we were "shooting for August". Well, here is it, with a whole 2 weeks to go before August ends :) &lt;/P&gt;
&lt;P&gt;As of right now the ADO.NET vNext August CTP is available &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=B68F6F53-EC87-4122-B1C8-EE24A043BF72&amp;amp;displaylang=en"&gt;for download&lt;/A&gt;. 
&lt;P&gt;This CTP includes a really broad set of features. The CTP documentation has a more detailed feature matrix, but here is a high-level summary of what you’ll find in this preview: 
&lt;UL&gt;
&lt;LI&gt;The ADO.NET Entity Framework, which includes: 
&lt;UL&gt;
&lt;LI&gt;The Entity Data Model (EDM), which allows developers to model data at a higher level of abstraction 
&lt;LI&gt;A powerful client-views/mapping engine to map to and from store schemas 
&lt;LI&gt;Full query support over EDM schemas using Entity SQL and LINQ 
&lt;LI&gt;An object services layer that allows you to choose to present query results as rows and columns or as objects. When using .NET objects, the system will transparently do identity resolution, change tracking and update processing for you. 
&lt;LI&gt;An open provider model that allows other stores to plug into the ADO.NET Entity Framework&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Language-Integrated Query (LINQ) integration in ADO.NET for this CTP includes: 
&lt;UL&gt;
&lt;LI&gt;LINQ to Entities: formulate queries using LINQ against your EDM schemas 
&lt;LI&gt;LINQ to DataSet: the DataSet finally gets full query capabilities! You can formulate LINQ queries that go against one or more DataTable objects. The LINQ to DataSet implementation will even optimize certain query patterns for better execution performance. &lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;Tools 
&lt;UL&gt;
&lt;LI&gt;We're working hard to include a rich set of tools that integrate naturally with the runtime components to provide a great end-to-end experience. Some early tools are included in this CTP, and more will come soon!&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;In the CTP package you'll find: 
&lt;UL&gt;
&lt;LI&gt;The actual ADO.NET CTP assemblies that will be installed in your system 
&lt;LI&gt;A few new project templates to create new ADO.NET Entity Framework-based applications and entity model libraries 
&lt;LI&gt;Various examples that illustrate how to use the ADO.NET Entity Framework and the LINQ integration in many different scenarios 
&lt;LI&gt;A couple of documents that describe the Entity Framework &amp;amp; LINQ integration.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;I'd like to encourage everyone that writes data-centric applications to take a look at this and send your questions, suggestions and complaints &lt;A href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=533&amp;amp;SiteID=1"&gt;this way&lt;/A&gt;; we'll be eagerly waiting for feedback! 
&lt;P&gt;If you want some more extra background before downloading and installing this, you can watch &lt;A href="http://channel9.msdn.com/showpost.aspx?postid=217633"&gt;this Channel 9 video&lt;/A&gt;, and read &lt;A href="http://msdn.microsoft.com/data/default.aspx?pull=/library/en-us/dnvs05/html/ADONETEnFrmOvw.asp"&gt;an introduction to the Entity Framework&lt;/A&gt; (which is a previous version of the document installed with the CTP), &lt;A href="http://msdn.microsoft.com/data/default.aspx?pull=/library/en-us/dnvs05/html/ADONET_EDM.asp"&gt;an introduction to the Entity Data Model&lt;/A&gt;, and &lt;A href="http://msdn.microsoft.com/data/default.aspx?pull=/library/en-us/dnvs05/html/nxtgenda.asp"&gt;the Next Generation Data Access Vision document&lt;/A&gt;. 
&lt;P&gt;Looking forward to hear your thoughts on the CTP!&lt;/P&gt;
&lt;P&gt;Pablo Castro&lt;BR&gt;ADO.NET Technical Lead&lt;BR&gt;Microsoft Corporation&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=701479" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>ADO.NET Entity Framework on Channel 9</title><link>http://blogs.msdn.com/adonet/archive/2006/07/19/671805.aspx</link><pubDate>Wed, 19 Jul 2006 23:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:671805</guid><dc:creator>dpblogs</dc:creator><slash:comments>35</slash:comments><comments>http://blogs.msdn.com/adonet/comments/671805.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=671805</wfw:commentRss><description>&lt;P&gt;A few weeks ago &lt;A href="http://blogs.msdn.com/adonet/archive/2006/07/11/662447.aspx"&gt;we released a couple of whitepapers&lt;/A&gt; that discuss the future directions of the Microsoft Data Platform and in particular the specifics around the next version of ADO.NET and the ADO.NET Entity Framework.&lt;/P&gt;
&lt;P&gt;Recently the Channel 9 folks came by Building 35 (SQL Server building at Microsoft) and we shot an episode with Mike Pizzo, Britt Johnston and myself chatting about why we chose to work on the Entity Framework for the next version of ADO.NET, what scenarios we’re targeting with it and some drill downs into what the code and designers actually look like in the current bits.&lt;/P&gt;
&lt;P&gt;You can &lt;A href="http://channel9.msdn.com/showpost.aspx?postid=217633"&gt;find the Channel 9 video here&lt;/A&gt;. As always, feedback is welcome.&lt;BR&gt;&amp;nbsp;&lt;BR&gt;Pablo Castro&lt;BR&gt;ADO.NET Technical Lead&lt;BR&gt;Microsoft Corporation&lt;BR&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=671805" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>Attention all ADO.NET provider writers!</title><link>http://blogs.msdn.com/adonet/archive/2006/07/12/663488.aspx</link><pubDate>Wed, 12 Jul 2006 19:20:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:663488</guid><dc:creator>dpblogs</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/adonet/comments/663488.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=663488</wfw:commentRss><description>&lt;P&gt;Microsoft is hosting an event for ADO.NET provider writers from July 31 - August 2.&lt;/P&gt;
&lt;P&gt;We’re looking for provider writers who want to get a head start on their vNext providers to come out to Redmond, WA. Bring your laptops. We’ll supply the caffeine!&lt;/P&gt;
&lt;P&gt;For more information, see the following post to the ADO.NET MSDN Forum: &lt;A href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=542887&amp;amp;SiteID=1"&gt;http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=542887&amp;amp;SiteID=1&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;David Sceppa&lt;BR&gt;Program Manager&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=663488" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>ADO.NET vNext - feedback so far</title><link>http://blogs.msdn.com/adonet/archive/2006/07/11/662485.aspx</link><pubDate>Tue, 11 Jul 2006 20:31:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:662485</guid><dc:creator>alexbarn</dc:creator><slash:comments>38</slash:comments><comments>http://blogs.msdn.com/adonet/comments/662485.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=662485</wfw:commentRss><description>&lt;P&gt;&lt;EM&gt;(this post&amp;nbsp;was originally &lt;/EM&gt;&lt;A href="http://blogs.msdn.com/dataaccess/archive/2006/06/23/645230.aspx"&gt;&lt;EM&gt;posted here&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;)&lt;/EM&gt;&lt;/P&gt;

Since announcing our ADO.NET vNext plans at TechEd 
							last week, the team has been on the lookout for your 
							feedback on where we heading with the next release. 
							This post is a round up of &lt;em&gt;some&lt;/em&gt; of the 
							comments / feedback we've heard. It's certainly not 
							all of it, but should give you a flavor of what we 
							are&amp;nbsp;hearing. Some of it positive, some if it less 
							so, but all very valuable...Lots of good questions 
							and clarification being asked for.&lt;p&gt;&lt;strong&gt;TechEd&lt;/strong&gt;&lt;/p&gt;
							&lt;p&gt;Let's start with&amp;nbsp;&lt;a href="http://weblogs.asp.net/aaguiar/archive/2006/06/12/DAT101-_2D00_-Microsoft_2700_s-Data-Platform-Vision.aspx"&gt;Andres 
							Aguiar&lt;/a&gt;. He sat through Dave Campbell's session 
							on Microsoft's
							&lt;a href="http://www.microsoft.com/sql/letter.mspx"&gt;
							Data Platform Vision&lt;/a&gt; (I'll post a link to the 
							webcast once it's up. In the meantime,
							&lt;a href="http://sqljunkies.com/WebLog/ktegels/archive/2006/06/12/21855.aspx"&gt;
							Kent Tegels has some useful notes&lt;/a&gt;).&lt;/p&gt;
							&lt;p&gt;Andres enjoyed the Entity Framework news:&lt;/p&gt;
							&lt;blockquote&gt;
								&lt;p&gt;&lt;i&gt;&amp;quot;It was a good session. I totally buy MS's 
								Data Vision. The most interesting stuff for me 
								is the Entity Framework. At last there will be a 
								conceptual data model that all MS products will 
								share (Reporting, Replication, Analysis 
								Services, ADO.NET). This is a big and important 
								improvement in the way we used data. The 'Data 
								Dude' tool looks cool. If they manage to 
								integrate it with the Entity Framework, it would 
								rock.&amp;quot;&lt;/i&gt;&lt;/p&gt;
							&lt;/blockquote&gt;
							&lt;p&gt;Pablo Castro, technical lead on ADO.NET also 
							presented at TechEd.&amp;nbsp;He provided a talk called&amp;nbsp;&lt;em&gt;'Next-generation 
							Data Access in .NET Applications with ADO.NET vNext'&lt;/em&gt; 
							(&lt;a href="http://www.devx.com/dotnet/Article/31693"&gt;summarized 
							at DevX here&lt;/a&gt;, Kent's notes
							&lt;a href="http://sqljunkies.com/WebLog/ktegels/archive/2006/06/12/21856.aspx"&gt;
							here&lt;/a&gt; and Jason Coyne's notes
							&lt;a href="http://geekswithblogs.net/gaijin42/archive/2006/06/13/tech_ed_ado_linq_entity_data_model_IExtendedDataRecord_pablo_castro.aspx"&gt;
							here&lt;/a&gt;). We had good face time with customers 
							giving us plenty of feedback after the talks. While 
							at TechEd, the team also had
							&lt;a href="http://jonathanbruceconnects.com/jonathan_bruce/2006/06/adonet_meetup_success.html"&gt;
							meet up&lt;/a&gt; with a few ADO.NET
							&lt;a href="http://www.sqlskills.com/blogs/bobb/PermaLink.aspx?guid=5043aad9-3ae0-4b1b-a691-e9fe77937188"&gt;
							friends&lt;/a&gt; and
							&lt;a href="http://blog.ziffdavis.com/devlife/archive/2006/06/14/42097.aspx"&gt;
							gurus&lt;/a&gt;.&lt;/p&gt;
							&lt;p&gt;(Dave Sceppa and Pablo also presented 'Integrated 
							Innovation: Using ADO.NET 2.0 with SQL Server 2005'. 
							You can view the webcast
							&lt;a href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032292285&amp;EventCategory=3&amp;culture=en-US&amp;CountryCode=US"&gt;
							here&lt;/a&gt; - registration required)&lt;/p&gt;
							&lt;p&gt;&lt;strong&gt;This week&lt;/strong&gt;&lt;/p&gt;
							&lt;p&gt;This week, Pablo&amp;nbsp;followed up TechEd
							&lt;a href="http://blogs.msdn.com/dataaccess/archive/2006/06/20/638378.aspx"&gt;
							with this post&lt;/a&gt; providing an outline of the 
							planned improvements with links to more detailed 
							documentation. He asked for more feedback - you've 
							been keeping us busy by providing lots of it on your 
							blogs and
							&lt;a href="http://blogs.msdn.com/dataaccess/archive/2006/06/20/638378.aspx#639258"&gt;
							comments at Pablo's post&lt;/a&gt;.&lt;/p&gt;
							&lt;p&gt;
							&lt;a href="http://www.techworld.com/applications/news/index.cfm?newsID=6273&amp;pagtype=samechan"&gt;
							Techworld&lt;/a&gt; covered the news too:&lt;/p&gt;
							&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
								&lt;p&gt;&lt;em&gt;&amp;quot;Entities will help improve communication 
								between business people and developers, said Lyn 
								Robison, an analyst with the application 
								platforms group at the Burton Group. &amp;quot;It will 
								raise the level of abstraction so that you can 
								begin to think of data from a business 
								perspective, not just from a 
								rows-and-tables-in-a-database perspective,&amp;quot; 
								Robison said.&amp;quot;&lt;/em&gt;&lt;/p&gt;
							&lt;/blockquote&gt;
							&lt;p&gt;Some of the early feedback on the documents 
							included this post on
							&lt;a href="http://www.ayende.com/Blog/CommentView,guid,906c64df-9da1-4f0c-adbc-24087d7b2a97.aspx"&gt;
							Ayende Rahien's blog&lt;/a&gt; on the topic of LINQ for 
							Entities, specifically: many-to-many relationships; 
							the extensibility of the data model; and Indexed and 
							Custom collections. You can read Pablo's response in 
							the
							&lt;a href="http://www.ayende.com/Blog/CommentView,guid,906c64df-9da1-4f0c-adbc-24087d7b2a97.aspx"&gt;
							post's comments&lt;/a&gt;. Wagnerblog also had some 
							thoughts to share in the context of
							&lt;a href="http://wagnerblog.com/index.php?p=636"&gt;
							ADO.NET Entities and ORMs&lt;/a&gt;. Tim Mallalieu (a PM 
							on the ADO.NET team) also blogged his thoughts
							&lt;a href="http://blogs.msdn.com/timmall/archive/2006/06/21/642299.aspx"&gt;
							on Entities&lt;/a&gt;, sparking off some
							&lt;a href="http://blogs.msdn.com/timmall/archive/2006/06/21/642299.aspx#642340"&gt;
							further discussion there&lt;/a&gt;.&lt;/p&gt;
							&lt;p&gt;A recurring theme of some of the feedback is 
							summed up by
							&lt;a href="http://weblogs.asp.net/aaguiar/archive/2006/06/12/DLinQ-_3D00_-LinQ-for-SQL.aspx"&gt;
							Andres Aguiar&lt;/a&gt;.&lt;/p&gt;
							&lt;blockquote&gt;
								&lt;p&gt;&lt;i&gt;&amp;quot;OK, it actually happened. We'll have two 
								mapping technologies in .NET v.next.&lt;br&gt;
								&lt;br&gt;
								LinQ for SQL, previously known as DLinQ is the 
								'simple' mapping technology.&lt;br&gt;
								&lt;br&gt;
								LinQ for Entities, will be on top of the new 
								ADO.NET Entity Framework, and will be the 
								'complex' (we could say 'real') mapping 
								technology.&lt;br&gt;
								&lt;br&gt;
								Now, does this make sense? How will someone 
								decide to use one or the other?&amp;quot;&lt;/i&gt;&lt;/p&gt;
							&lt;/blockquote&gt;
							&lt;p&gt;
							&lt;a href="http://www.ayende.com/Blog/2006/06/17/ADONetEntityFramework.aspx"&gt;
							Ayende again&lt;/a&gt;:&lt;/p&gt;
							&lt;blockquote&gt;
								&lt;p&gt;&lt;i&gt;&amp;quot;Oh joy! &lt;/i&gt;Three&lt;i&gt; ORM frameworks. Linq 
								to SQL, Linq to DataSet, Linq to Entities.&amp;quot;&lt;/i&gt;&lt;/p&gt;
							&lt;/blockquote&gt;
							&lt;p&gt;This was echoed
							&lt;a href="http://davidhayden.com/blog/dave/archive/2006/06/12/2987.aspx"&gt;
							by David Hayden&lt;/a&gt; and
							&lt;a href="http://codebetter.com/blogs/sam.gentile/archive/2006/06/18/146542.aspx"&gt;
							others&lt;/a&gt;. Clearly we have work to do in this area 
							- this point was acknowledged by Somasegar (VP of 
							Microsoft's Developer Division) where he blogged 
							this week
							&lt;a href="http://blogs.msdn.com/somasegar/archive/2006/06/21/641795.aspx"&gt;
							about LINQ and ADO.NET Entities&lt;/a&gt;:&lt;/p&gt;
							&lt;blockquote&gt;
								&lt;p&gt;&lt;i&gt;&amp;quot;Our teams are busy working on the next 
								version of Visual Studio and incorporating these 
								technologies in a consolidated way to ensure the 
								very best experience for our developers.&amp;quot;&lt;/i&gt;&lt;/p&gt;
							&lt;/blockquote&gt;
							&lt;p&gt;Another common question we heard was about the 
							ADO.NET vNext CTP and its timing.
							&lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=488135&amp;SiteID=1"&gt;
							In this Forum post&lt;/a&gt; by Lance Olson, the ADO.NET 
							Group PM, he provides an August 2006 target date. 
							This was later
							&lt;a href="http://bloggingabout.net/blogs/erwyn/archive/2006/06/22/12638.aspx"&gt;
							blogged by Erwyn Van Der Meer&lt;/a&gt; and
							&lt;a href="http://www.base4.net/Blog.aspx?ID=44"&gt;Alex 
							at Base4&lt;/a&gt; after the team confirmed it.&lt;/p&gt;
							&lt;p&gt;Getting more into developer experience, Shyam 
							posted up a '&lt;a href="http://madprops.org/cs/blogs/mabster/archive/2006/06/22/5346.aspx"&gt;great&lt;/a&gt;' 
							screencast
							&lt;a href="http://blogs.msdn.com/dataaccess/archive/2006/06/22/642260.aspx"&gt;
							showing ADO.NET vNext in action&lt;/a&gt;, again prompting
							&lt;a href="http://blogs.msdn.com/dataaccess/archive/2006/06/22/642260.aspx#642335"&gt;
							yet more feedback and questions&lt;/a&gt;.&lt;/p&gt;
							&lt;p&gt;&lt;strong&gt;More feedback&lt;/strong&gt;&lt;/p&gt;
							&lt;p&gt;As we move toward the CTP later this year, we 
							want to make sure we have a systematic, scalable 
							process around capturing your feedback (Bugs, 
							Suggestions and Other) on the bits we release. We 
							also want to provide you with status on these as the 
							product development goes on. We'll be using the
							&lt;a href="https://connect.microsoft.com/"&gt;Microsoft 
							Connect&lt;/a&gt; platform developed for beta programs at 
							Microsoft (&lt;a href="http://blogs.msdn.com/ie/archive/2006/03/24/560095.aspx"&gt;IE 
							is one of the many teams using it&lt;/a&gt;). Using 
							Connect, the feedback provided goes directly into 
							our team's bug tracking and development systems. It 
							has recently been upgraded to
							&lt;a href="http://blogs.msdn.com/csnow/archive/2006/06/14/631185.aspx"&gt;
							replace the Product Feedback Center (Ladybug)&lt;/a&gt;. 
							Look out for more info with respect to ADO.NET vNext 
							later in the year.&lt;/p&gt;
							&lt;p&gt;In the meantime, keep the feedback coming!&lt;/p&gt;
							&lt;p&gt;Oh, and don't forget to check out the
							&lt;a href="http://blogs.msdn.com/data"&gt;new Data blog&lt;/a&gt;. 
							If you want to get your thoughts heard by Sam 
							Druker, Product Unit Manager (PUM) for Microsoft's 
							Data Programmability team,
							&lt;a href="http://blogs.msdn.com/data/archive/2006/06/21/642023.aspx"&gt;
							then this is the place to do it&lt;/a&gt;.&lt;/p&gt;
							&lt;p&gt;Thanks!&lt;/p&gt;
							&lt;p&gt;Alex Barnett, Community PM&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=662485" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item><item><title>ADO.NET vNext: The Entity Framework, LINQ and more</title><link>http://blogs.msdn.com/adonet/archive/2006/07/11/662447.aspx</link><pubDate>Tue, 11 Jul 2006 19:57:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:662447</guid><dc:creator>alexbarn</dc:creator><slash:comments>82</slash:comments><comments>http://blogs.msdn.com/adonet/comments/662447.aspx</comments><wfw:commentRss>http://blogs.msdn.com/adonet/commentrss.aspx?PostID=662447</wfw:commentRss><description>&lt;P&gt;&lt;EM&gt;(this post&amp;nbsp;was originally &lt;/EM&gt;&lt;A href="http://blogs.msdn.com/dataaccess/archive/2006/06/20/638378.aspx"&gt;&lt;EM&gt;posted here&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt;)&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Once you are done with shipping large products such as SQL Server 2005 and Visual Studio 2005 you’d expect to have a quiet time for a while, slow down a bit, that kind of stuff… &lt;/P&gt;
&lt;P&gt;Turns out that it wasn’t the case this time. Right after SQL Server 2005 and Visual Studio 2005 were ready to ship (and actually even before they were completely done) we started to work hard on the next version of the data programming technologies; we worked on a broad vision that spans various releases and various technologies, and also specifically on how ADO.NET plays in that vision. &lt;/P&gt;
&lt;P&gt;In the context of the vision for data programmability and ADO.NET, we decided that the next big step for ADO.NET was to move to a higher-level of abstraction. Connections, commands and readers are great for low-level stuff, but it’s not exactly what you want to be dealing with continuously when writing business logic. There are other aspects that are similarly “low level” and applications have to deal with, like the actual database schemas (e.g. did you even wonder why you have to do a 3-way join just to navigate a relationship between entities instead of just saying “traverse the relationship”?).&lt;/P&gt;
&lt;P&gt;Now we’re making public &lt;A href="http://msdn.microsoft.com/data/default.aspx?pull=/library/en-us/dnvs05/html/nxtgenda.asp"&gt;our vision on data programmability&lt;/A&gt;, it’s a great read, I highly recommend it.&lt;/P&gt;
&lt;P&gt;We’re also making public the &lt;A href="http://msdn.microsoft.com/data/default.aspx?pull=/library/en-us/dnvs05/html/ADONETEnFrmOvw.asp"&gt;specific plans for the next version of ADO.NET&lt;/A&gt;, a bit more technical, less formal, but with all the details of how we’re moving the technology forward and describes the ADO.NET Entity Framework, as well as the &lt;A href="http://msdn.microsoft.com/data/default.aspx?pull=/library/en-us/dnvs05/html/ADONET_EDM.asp"&gt;ADO.NET Entity Data Model (EDM)&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;The first of a series of Channel 9 videos has been posted - this one &lt;A href="http://channel9.msdn.com/Showpost.aspx?postid=202138"&gt;features Sam and Anders talking&lt;/A&gt; about Entities, LINQ and a few details about how all the stuff fits together.&lt;/P&gt;
&lt;P&gt;Feedback on all of this stuff is welcome. I highly encourage folks to check out all of the content we’re putting out there and write us with your thoughts.&lt;BR&gt;&lt;BR&gt;Pablo Castro&lt;BR&gt;ADO.NET Technical Lead&lt;BR&gt;Microsoft Corporation&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=662447" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET/default.aspx">ADO.NET</category><category domain="http://blogs.msdn.com/adonet/archive/tags/ADO.NET+vNext/default.aspx">ADO.NET vNext</category></item></channel></rss>