<?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 Blog</title><link>http://blogs.msdn.com/b/adonet/</link><description>The official source of information on Managed Providers, DataSet &amp;amp; Entity Framework from Microsoft</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>Entity Framework Links #4</title><link>http://blogs.msdn.com/b/adonet/archive/2013/03/18/entity-framework-links-4.aspx</link><pubDate>Mon, 18 Mar 2013 17:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10403248</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>6</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10403248</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2013/03/18/entity-framework-links-4.aspx#comments</comments><description>&lt;p&gt;This is the fourth post in a regular series to recap interesting articles, posts and other happenings in the EF world.&lt;/p&gt;
&lt;h2&gt;Entity Framework 6&lt;/h2&gt;
&lt;p&gt;Since our last EF Links post we &lt;a href="http://blogs.msdn.com/b/adonet/archive/2013/02/27/ef6-alpha-3-available-on-nuget.aspx"&gt;announced the availability of EF6 Alpha 3&lt;/a&gt;. Of particular note, this preview introduced support of &lt;a href="http://entityframework.codeplex.com/wikipage?title=Code%20First%20Insert%2fUpdate%2fDelete%20Stored%20Procedure%20Mapping"&gt;mapping to insert/update/delete stored procedures with Code First&lt;/a&gt; and &lt;a href="http://entityframework.codeplex.com/wikipage?title=Connection%20Resiliency%20Spec"&gt;connection resiliency&lt;/a&gt; to automatically recover from transient connection failures&lt;/p&gt;
&lt;p&gt;There were a number of blog posts about new features coming in EF6:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Arthur Vickers blogged about the changes we checked in to &lt;a href="http://blog.oneunicorn.com/2013/03/11/ef6-nested-types-and-more-for-code-first/"&gt;support nested types and more for Code First&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Jiri Cincura posted a two part series about using custom conventions to help build the EF6 Firebird provider (&lt;a href="http://blog.cincura.net/233167-custom-conventions-in-entity-framework-6-helping-firebird/"&gt;Part 1&lt;/a&gt;, &lt;a href="http://blog.cincura.net/233174-custom-conventions-in-entity-framework-6-helping-firebird-part-2/"&gt;Part 2&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Rowan Miller wrote about &lt;a href="http://romiller.com/2013/02/27/ef6-writing-your-own-code-first-migration-operations/"&gt;writing your own Code First Migrations operations&lt;/a&gt;, &lt;a href="http://romiller.com/2013/01/29/ef6-code-first-configuring-unmapped-base-types/"&gt;configuring unmapped base types using Code First custom conventions&lt;/a&gt;, and &lt;a href="http://romiller.com/2013/01/23/ef6-code-first-mapping-all-private-properties-using-custom-conventions/"&gt;mapping all private properties using Code First custom conventions&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We also shared some &lt;a href="http://entityframework.codeplex.com/wikipage?title=Design%20Meeting%20Notes%20-%20March%2013%2c%202013"&gt;changes we are planning to make to custom conventions&lt;/a&gt; to improve this new feature. These changes will be included in a future preview.&lt;/p&gt;
&lt;h2&gt;Entity Framework 5&lt;/h2&gt;
&lt;p&gt;Julie Lerman appeared on Visual Studio Toolbox sharing &lt;a href="http://channel9.msdn.com/Shows/Visual-Studio-Toolbox/Entity-Framework-Tips-and-Tricks"&gt;Entity Framework tips and tricks&lt;/a&gt;. She also released a &lt;a href="http://pluralsight.com/training/courses/TableOfContents?courseName=entity-framework5-getting-started"&gt;Getting Started with Entity Framework 5 course on Pluralsight&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Rowan Miller published a two part series about extending and customizing Code First models at runtime (&lt;a href="http://romiller.com/2013/02/05/extending-and-customizing-code-first-models-part-1/"&gt;Part 1&lt;/a&gt;, &lt;a href="http://romiller.com/2013/02/15/extending-and-customizing-code-first-models-part-2-of-2/"&gt;Part 2&lt;/a&gt;).&lt;/p&gt;
&lt;h2&gt;EF Power Tools&lt;/h2&gt;
&lt;p&gt;We &lt;a href="http://blogs.msdn.com/b/adonet/archive/2013/01/30/ef-power-tools-beta-3-available.aspx"&gt;announced Beta 3 of the EF Power Tools&lt;/a&gt;. We also shared &lt;a href="http://entityframework.codeplex.com/wikipage?title=Tooling%20Consolidation"&gt;plans to provide a single set of tooling for EF&lt;/a&gt;, which means we won't be releasing an RTM version of the Power Tools. However, we will continue to maintain Beta releases of the Power Tools until the functionality becomes available in a pre-release version of the primary EF tooling.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10403248" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Entity+Framework/">Entity Framework</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/What_2700_s+New/">What's New</category></item><item><title>SQL Database Connectivity and the Idempotency Issue</title><link>http://blogs.msdn.com/b/adonet/archive/2013/03/11/sql-database-connectivity-and-the-idempotency-issue.aspx</link><pubDate>Mon, 11 Mar 2013 21:19:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10401353</guid><dc:creator>dpblogs</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10401353</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2013/03/11/sql-database-connectivity-and-the-idempotency-issue.aspx#comments</comments><description>&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;Applications connecting to SQL Server sometimes experience connections breaks due back-end failures.&amp;nbsp; In general, they tend to be uncommon in LAN environment and more frequent in WAN topologies, when connectivity tends to be challenged by geographically dispersed links.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;The introduction of Windows Azure SQL Database (WASD), which is a cloud-based SQL Server, added new availability and reliability challenges to the connectivity space. As a result, applications connecting to WASD witness frequent connection breaks due to backend reconfigurations and failures, forcing developers to include special logic for every database operation in order to handle these unexpected situations.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;Basically, every time a connection drops, the application needs to decide to either reconnect (if it was a recoverable error (e.g. &amp;ldquo;server is busy)) or return an exception to the end user (if it was a non-recoverable one (e.g. &amp;ldquo;invalid password&amp;rdquo;)).&amp;nbsp; In order to better handle these situations, developers can use a set of resources and best practices to avoid unwelcomed surprises after deploying applications to production.&amp;nbsp; &lt;/span&gt;&lt;span style="font-family: Verdana;"&gt;The &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/hh680918(v=pandp.50).aspx"&gt;&lt;span style="color: #333399; font-family: Verdana;"&gt;Transient Fault Handling Framework for SQL Database, Windows Azure Storage, Service Bus &amp;amp; Cache&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Verdana;"&gt; is a free component that encapsulates all the logic required to handle most of the disconnections happening in SQL Database.&amp;nbsp; For more information, please refer to its MSDN&amp;rsquo;s documentation &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/hh680918(v=pandp.50).aspx"&gt;&lt;span style="color: #333399; font-family: Verdana;"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Verdana;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;Also, for general resiliency guidance, please refer to &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj853352.aspx#bkmk_ResiliencyPatterns"&gt;&lt;span style="color: #333399; font-family: Verdana;"&gt;Failsafe: Guidance for Resilient Cloud Architectures&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Verdana;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p class="UseCase"&gt;&lt;strong&gt;&lt;span style="font-size: small;"&gt;The Idempotency Issue&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;Now, special care must be considered when writing to a SQL Database table because a simple IUD (INSERT, UPDATE or DELETE) statement can potentially lead to data corruption.&amp;nbsp; This is because there is no way to know if the statement was executed by the server immediately after a connection failure.&amp;nbsp; Consider the code snippet below:&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpFirst"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;&lt;span style="color: #333399;"&gt;public class &lt;/span&gt;Data&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 30px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;&lt;span style="color: #333399;"&gt;public void &lt;/span&gt;Query(SqlConnection sqlConnection, &lt;span style="color: #333399;"&gt;string&lt;/span&gt; szQuery)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 30px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 60px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="color: #333399;"&gt;&lt;span style="font-family: Courier New;"&gt;try&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 60px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 90px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;&lt;span style="color: #333399;"&gt;using&lt;/span&gt; (SqlConnection conn = &lt;span style="color: #333399;"&gt;new &lt;/span&gt;SqlConnection("&amp;hellip;"))&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 90px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 120px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;conn.Open();&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 120px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;SqlCommand sqlCommand = &lt;span style="color: #333399;"&gt;new &lt;/span&gt;SqlCommand(szQuery, conn);&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 120px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;sqlCommand.ExecuteNonQuery("UPDATE productList SET Price=Price*1.01");&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 90px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 60px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 60px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;&lt;span style="color: #333399;"&gt;catch (&lt;/span&gt;SqlException&lt;span style="color: #333399;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 60px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 90px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;//...&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 90px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;&lt;span style="color: #333399;"&gt;throw&lt;/span&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 60px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpMiddle" style="padding-left: 30px;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="SourceCodeSmallCxSpLast"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: Courier New;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;If the connection fails immediately after &lt;/span&gt;sqlCommand.ExecuteNonQuery&lt;span style="font-family: Verdana;"&gt;, there is no way for the application to know if it needs to reissue the query (the UPDATE didn&amp;rsquo;t execute) or not (the UPDATE executed) upon reconnection.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;In order to avoid this problem, the application must track if a command was uniquely executed (idempotent command) or not.&amp;nbsp; If it were, then, there is nothing to do, but if it weren&amp;rsquo;t, then the application can safely re-execute it.&amp;nbsp; Currently, SQL Database does not offer any idempotency capability, transferring this responsibility to the application.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;One way to track idempotent activities is to track all writing database operations in a table, like the one below.&amp;nbsp; This way, the application can query the table to know if a command was executed or not.&lt;/span&gt;&lt;/p&gt;
&lt;p class="Picture"&gt;&amp;nbsp;&lt;span style="font-family: Verdana;"&gt;Once the tracking information is available, there are many ways to query it in order to reissue the command.&amp;nbsp; Personally, I like to encapsulate the code in stored procedures and confine the idempotent logic to the database.&amp;nbsp; This way, it becomes transparent to the application and simplifies the use of the &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/hh680918(v=pandp.50).aspx"&gt;&lt;span style="color: #333399; font-family: Verdana;"&gt;Transient Fault Handling Framework for SQL Database, Windows Azure Storage, Service Bus &amp;amp; Cache&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Verdana;"&gt; component.&amp;nbsp; The snippet below exemplifies this approach:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;CREATE PROCEDURE UpdateBranch&lt;/p&gt;
&lt;p&gt;-- Add the parameters for the stored procedure here&lt;/p&gt;
&lt;p&gt;@Operation AS UNIQUEIDENTIFIER,&lt;/p&gt;
&lt;p&gt;@ParentId AS INT,&lt;/p&gt;
&lt;p&gt;@BranchDbId as INT&lt;/p&gt;
&lt;p&gt;AS&lt;/p&gt;
&lt;p&gt;BEGIN&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;DECLARE @COUNT_ID AS INT = 0&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;-- SET NOCOUNT ON added to prevent extra result sets from&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;-- interfering with SELECT statements.&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;SET NOCOUNT ON;&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;SET @COUNT_ID = (SELECT COUNT([ID]) FROM dbo.IdempotencyTracker WHERE ID = @Operation)&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;IF (@COUNT_ID = 0)&lt;/p&gt;
&lt;p style="padding-left: 60px;"&gt;BEGIN&lt;/p&gt;
&lt;p style="padding-left: 90px;"&gt;BEGIN TRANSACTION&lt;/p&gt;
&lt;p style="padding-left: 120px;"&gt;UPDATE [dbo].[Branch] SET [BranchDbId] = @BranchDbId WHERE ParentId = @ParentId&lt;/p&gt;
&lt;p style="padding-left: 120px;"&gt;INSERT INTO [dbo].[IdempotencyTracker] ([ID]) VALUES (@Operation)&lt;/p&gt;
&lt;p style="padding-left: 90px;"&gt;COMMIT&lt;/p&gt;
&lt;p style="padding-left: 60px;"&gt;END&lt;/p&gt;
&lt;p&gt;END&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;In the scenario above, the application is responsible for generating and saving &lt;/span&gt;@Operation&lt;span style="font-family: Verdana;"&gt; value in order to avoid losing track of the operation.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;Concluding, although using the &lt;/span&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/hh680918(v=pandp.50).aspx"&gt;&lt;span style="color: #333399; font-family: Verdana;"&gt;Transient Fault Handling Framework for SQL Database, Windows Azure Storage, Service Bus &amp;amp; Cache&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Verdana;"&gt; component is the right way to avoid connectivity issues in SQL Database, it&amp;rsquo;s not enough.&amp;nbsp; You really need to implement an idempotency strategy in order to avoid data duplications or inconsistencies when writing to the database.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;Luiz Santos&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;Sr. Program Manager&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Verdana;"&gt;SQL Server Team&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10401353" width="1" height="1"&gt;</description></item><item><title>EF6 Alpha 3 Available on NuGet</title><link>http://blogs.msdn.com/b/adonet/archive/2013/02/27/ef6-alpha-3-available-on-nuget.aspx</link><pubDate>Wed, 27 Feb 2013 18:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10397636</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>45</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10397636</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2013/02/27/ef6-alpha-3-available-on-nuget.aspx#comments</comments><description>&lt;p&gt;A couple of months back we released EF6 Alpha 2, since then we've been adding new features, polishing existing features and fixing bugs. Today we are pleased to announce the availability of Alpha 3.&amp;nbsp;EF6 is being developed in an open source code base on CodePlex, see our &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/07/19/entity-framework-and-open-source.aspx"&gt;open source announcement&lt;/a&gt; for more details.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;We Want Your Feedback&lt;/h2&gt;
&lt;p&gt;You can help us make EF6 a great release by providing feedback and suggestions. You can provide feedback by commenting on this post, commenting on the feature specifications linked below&amp;nbsp;or &lt;a href="http://entityframework.codeplex.com/discussions/create"&gt;starting a discussion&lt;/a&gt; on our CodePlex site.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Support&lt;/h2&gt;
&lt;p&gt;This is a preview of features that will be available in future releases and is designed to allow you to provide feedback on the design of these features. It is not intended or licensed for use in production. &lt;strong&gt;The APIs and functionality included in Alpha&amp;nbsp;3 are likely to change prior to the final release of EF6.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If you need assistance using the new features, please &lt;a href="http://stackoverflow.com/questions/ask"&gt;post questions on Stack Overflow&lt;/a&gt; using the entity-framework tag.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Getting Started with Alpha 3&lt;/h2&gt;
&lt;p&gt;The &lt;a href="http://msdn.microsoft.com/en-us/data/ee712906"&gt;Get It&lt;/a&gt; page provides instructions for installing the latest pre-release version of Entity Framework.&lt;/p&gt;
&lt;p&gt;&lt;span style="color: red;"&gt;&lt;em&gt;&lt;strong&gt;Note:&lt;/strong&gt; In some cases you may need to update your EF5 code to work with EF6, see &lt;a href="http://entityframework.codeplex.com/wikipage?title=Updating%20Applications%20to%20use%20EF6"&gt;Updating Applications to use EF6&lt;/a&gt;.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;What's Changed Since Alpha 2&lt;/h3&gt;
&lt;p&gt;The following features and changes have been implemented since Alpha 2:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Code First Mapping to Insert/Update/Delete Stored Procedures&lt;/strong&gt; is now supported. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=Code%20First%20Insert%2fUpdate%2fDelete%20Stored%20Procedure%20Mapping"&gt;feature specification&lt;/a&gt; on our CodePlex site provides examples of using this new feature. This feature is still being implemented and does not include full Migrations support&amp;nbsp;in Alpha 3.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Connection Resiliency&lt;/strong&gt; enables automatic recovery from transient connection failures. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=Connection%20Resiliency%20Spec"&gt;feature specification&lt;/a&gt; on our CodePlex site shows how to enable this feature and how to create your own retry policies.&lt;/li&gt;
&lt;li&gt;We accepted a pull request from &lt;a href="http://www.codeplex.com/site/users/view/iceclow"&gt;iceclow&lt;/a&gt; that allows you to create &lt;strong&gt;custom migrations operations&lt;/strong&gt; and process them in a custom migrations&amp;nbsp;SQL generator. &lt;a href="http://romiller.com/2013/02/27/ef6-writing-your-own-code-first-migration-operations/"&gt;This blog post&lt;/a&gt; provides an example of using this new feature.&lt;/li&gt;
&lt;li&gt;We accepted a pull request from &lt;a href="http://www.codeplex.com/site/users/view/UnaiZorrilla"&gt;UnaiZorrilla&lt;/a&gt; to provide a&lt;strong&gt; pluggable pluralization &amp;amp; singularization service&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;The new &lt;strong&gt;DbContext.Database.UseTransaction and DbContext.Database.BeginTransaction&lt;/strong&gt; APIs&amp;nbsp;enable scenarios where you need to manage your own transactions.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;What Else is New in EF6&lt;/h3&gt;
&lt;p&gt;The following features and changes&amp;nbsp;are included in Alpha&amp;nbsp;3 but have not changed significantly since Alpha 2:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Async Query and Save&lt;/strong&gt; adds support for&amp;nbsp;the task-based asynchronous patterns that were introduced in .NET 4.5. We've put together a &lt;a href="http://msdn.microsoft.com/en-us/data/jj819165"&gt;walkthrough&lt;/a&gt; that demonstrates this new feature. You can also view the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Task-based%20Asynchronous%20Pattern%20support%20in%20EF."&gt;feature specification&lt;/a&gt; on our CodePlex site for more detailed information.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custom Code First Conventions&lt;/strong&gt; allow&amp;nbsp;write your own conventions to help avoid repetitive configuration. We provide a simple API for lightweight conventions as well as some more complex building blocks to allow you to author more complicated conventions. We have&amp;nbsp;a &lt;a href="http://msdn.microsoft.com/en-us/data/jj819164"&gt;walkthough&lt;/a&gt; for this feature and&amp;nbsp;the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Custom%20Conventions"&gt;feature specification&lt;/a&gt; is on our CodePlex site.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dependency Resolution&lt;/strong&gt; introduces support for&amp;nbsp;the Service Locator pattern and we've factored out some pieces of functionality that can be replaced with custom implementations. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=EF%20Configuration%20and%20Extensibility"&gt;feature specification&lt;/a&gt; provides details about this pattern, and we've put together a &lt;a href="http://msdn.microsoft.com/en-us/data/jj680697"&gt;list of services that can be injected&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Code-Based Configuration&lt;/strong&gt; - Configuration has traditionally been specified in a config file, EF6 also gives you the option of performing configuration in code. We've put together an &lt;a href="http://msdn.microsoft.com/en-us/data/jj680699"&gt;overview with some examples&lt;/a&gt; and there is a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Code-based%20Configuration"&gt;feature specification&lt;/a&gt; with more details.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Configurable Migrations History Table&lt;/strong&gt; - Some database providers require the appropriate data types etc. to be specified for the Migrations History table to work correctly. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=Migrations%20History%20Table%20Customization"&gt;feature specification&lt;/a&gt; provides details about how to do this in EF6.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multiple Contexts per Database&lt;/strong&gt; - In previous versions of EF you were limited to one Code First model per database when using Migrations or when Code First automatically created the database for you, this limitation is now removed. If you want to know more about how we enabled this, check out the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Multi-tenant%20Migrations"&gt;feature specification&lt;/a&gt; on CodePlex.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Updated Provider Model&lt;/strong&gt; - In previous versions of EF some of the core components were a part of the .NET Framework. In EF6 we've moved all these components into our NuGet package, allowing us to develop and deliver more features in a shorter time frame. This move required some changes to our provider model. We've created a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Rebuilding%20EF%20providers%20for%20EF6"&gt;document&lt;/a&gt; that details the changes required by providers to support EF6, and provided a &lt;a href="http://msdn.microsoft.com/en-us/data/jj730568"&gt;list of providers&lt;/a&gt; that we are aware of with EF6 support.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enums, Spatial and Better Performance on .NET 4.0&lt;/strong&gt; - By moving the core components that used to be in the .NET Framework into the EF NuGet package we are now able to offer enum support, spatial data types and the performance improvements from EF5 on .NET 4.0.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DbContext can now be created with a DbConnection that is already opened&lt;/strong&gt;. Find out more about this change on the &lt;a href="http://entityframework.codeplex.com/workitem/45"&gt;related work item&lt;/a&gt; on our CodePlex site.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved&amp;nbsp;performance of Enumerable.Contains in LINQ queries&lt;/strong&gt;. Find out more about this change on the &lt;a href="http://entityframework.codeplex.com/workitem/245"&gt;related work item&lt;/a&gt; on our CodePlex site.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Default transaction isolation level is changed to READ_COMMITTED_SNAPSHOT&lt;/strong&gt; for databases created&amp;nbsp;using Code First, potentially allowing for more scalability and fewer deadlocks. Find out more about this change on the &lt;a title="http://entityframework.codeplex.com/workitem/7" href="http://entityframework.codeplex.com/workitem/7"&gt;related work item&lt;/a&gt; on our CodePlex site.&lt;/li&gt;
&lt;li&gt;We accepted a pull request from &lt;a href="http://www.codeplex.com/site/users/view/AlirezaHaghshenas"&gt;AlirezaHaghshenas&lt;/a&gt;&amp;nbsp;that provides &lt;strong&gt;significantly&amp;nbsp;improved warm up time (view generation), especially&amp;nbsp;for large models.&lt;/strong&gt; View the &lt;a href="http://entityframework.codeplex.com/discussions/396130"&gt;discussion&amp;nbsp;about this change&lt;/a&gt; on our CodePlex site for more information. We're also working on some other changes to further improve warm up time.&lt;/li&gt;
&lt;li&gt;We accepted a pull request from &lt;a id="RequestFrom" title="Pull Request from UnaiZorrilla" href="http://www.codeplex.com/site/users/view/UnaiZorrilla"&gt;UnaiZorrilla&lt;/a&gt; that adds a &lt;strong&gt;DbModelBuilder.Configurations.AddFromAssembly method&lt;/strong&gt;. If you are using configuration classes with the Code First Fluent API, this&amp;nbsp;method allows you to easily&amp;nbsp;add all configuration classes defined in an assembly.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;What's after Alpha 3&lt;/h2&gt;
&lt;p&gt;Alpha 3 contains all the major features we are planning to implement for the runtime&amp;nbsp;in the EF6 release. We'll now turn our attention to polishing and completing these new features, implementing small improvements, fixing bugs and everything else to make EF6 a great release. We're still accepting pull requests too.&lt;/p&gt;
&lt;p&gt;We've also been getting the EF Designer code base updated for the EF6 release and we hope to have a preview of the EF6 designer available soon.&lt;/p&gt;
&lt;p&gt;If you want to try out changes we've made since the last official pre-release, you can use the latest &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/09/17/ef-nightly-builds-available.aspx"&gt;signed nightly build&lt;/a&gt;. You can also&amp;nbsp;check out our &lt;a href="http://entityframework.codeplex.com/wikipage?title=specs"&gt;Feature Specifications&lt;/a&gt;&amp;nbsp;and &lt;a title="Design Meeting Notes" href="http://entityframework.codeplex.com/wikipage?title=Design%20Meeting%20Notes"&gt;Design Meeting Notes&lt;/a&gt; to stay up to date with what our team is working on.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10397636" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Entity+Framework/">Entity Framework</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/What_2700_s+New/">What's New</category></item><item><title>EF Power Tools Beta 3 Available</title><link>http://blogs.msdn.com/b/adonet/archive/2013/01/30/ef-power-tools-beta-3-available.aspx</link><pubDate>Wed, 30 Jan 2013 18:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10389592</guid><dc:creator>Glenn Condron</dc:creator><slash:comments>23</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10389592</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2013/01/30/ef-power-tools-beta-3-available.aspx#comments</comments><description>&lt;p&gt;&lt;span&gt;The Entity Framework Power Tools provide additional design-time tools in Visual Studio to help you develop using the Entity Framework. Beta 3 of the Power Tools is now available.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Where do I get it?&lt;/h2&gt;
&lt;p&gt;The&amp;nbsp;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d"&gt;Entity Framework Power Tools&lt;/a&gt;&amp;nbsp;are available on the Visual Studio Gallery.&lt;/p&gt;
&lt;p&gt;You can also install them directly from Visual Studio by selecting 'Tools -&amp;gt; Extension Manager...' then searching for "Entity Framework Power Tools" in the Online Gallery.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;What's new in Beta 3?&lt;/h2&gt;
&lt;p&gt;Beta 3 is primarily a bug fix release and includes fixes for the following issues:&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a id="TitleLink0" href="http://entityframework.codeplex.com/workitem/829"&gt;EF Power Tools not compatible with VS2012 Update 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="TitleLink1" href="http://entityframework.codeplex.com/workitem/742"&gt;Microsoft.DbContextPackage.Extensions.ProjectExtensions.InstallPackage(Project project, String packageId) Error&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="TitleLink2" href="http://entityframework.codeplex.com/workitem/361"&gt;Power Tools: EF "Reverse Engineer Code First" tool should add reference to EF package if not installed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="TitleLink3" href="http://entityframework.codeplex.com/workitem/353"&gt;Reverse Engineer Code First: Spatial types have wrong namespace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="TitleLink4" href="http://entityframework.codeplex.com/workitem/294"&gt;Classes generated by EF PowerTools should be partial&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="TitleLink5" href="http://entityframework.codeplex.com/workitem/249"&gt;Power Tools: Exception from unloaded projects - HRESULT : 0x80004001 (E_NOTIMPL))&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a id="TitleLink6" href="http://entityframework.codeplex.com/workitem/214"&gt;Power Tools: Context menu commands not working in project under solution folder&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Future of the Power Tools&lt;/h2&gt;
&lt;p&gt;We are making an effort to consolidate and simplify&amp;nbsp;the tooling for EF. As part of this effort we will be taking the functionality from the Power Tools and incorporating it into the EF Designer. There is a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Tooling%20Consolidation"&gt;feature specification&lt;/a&gt; on our CodePlex site that outlines some of this work.&lt;/p&gt;
&lt;p&gt;This means that we won't be releasing an RTM version of the Power Tools. However, we will continue to maintain Beta releases of the Power Tools until the functionality becomes available in a pre-release version of the EF Designer.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Support&lt;/h2&gt;
&lt;p&gt;This release is a preview of features that we are considering for a future release and is designed to allow you to provide feedback on the design of these features.&lt;/p&gt;
&lt;p&gt;If you have a question,&amp;nbsp;&lt;a href="http://stackoverflow.com/questions/ask"&gt;ask it on Stack Overflow&lt;/a&gt;&amp;nbsp;using the entity-framework tag.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Compatibility&lt;/h2&gt;
&lt;p&gt;The Power Tools are compatible with Visual Studio 2010 and 2012 and Entity Framework 4.2 thru 6.0.&lt;/p&gt;
&lt;p&gt;There are some temporary limitations&amp;nbsp;that we will address in a future release:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The 'Generate Views' functionality is currently disabled when using EF6.&lt;/li&gt;
&lt;li&gt;The 'View Entity Data Model (Read-only)' functionality does not work when using EF6 in Visual Studio 2010.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;What does it add to Visual Studio?&lt;/h2&gt;
&lt;p&gt;EF Power Tools Beta 3 is for Code First, model-first, and database-first development and adds the following context menu options to an 'Entity Framework' sub-menu inside Visual Studio.&lt;/p&gt;
&lt;h3&gt;When right-clicking on a C# project&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reverse Engineer Code First&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;This command allows one-time generation of Code First mappings for an existing database. This option is useful if you want to use Code First to target an existing database as it takes care of a lot of the initial coding. The command prompts for a connection to an existing database and then reverse engineers POCO classes, a derived DbContext, and Code First mappings that can be used to access the database.
&lt;ul&gt;
&lt;li&gt;If you have not already added the EntityFramework NuGet package to your project, the latest version will be downloaded as part of running reverse engineer.&lt;/li&gt;
&lt;li&gt;The reverse engineer process by default produces a complete mapping using the fluent API. Items such as column name will always be configured, even when they would be correctly inferred by conventions. This allows you to refactor property/class names etc. without needing to manually update the mapping.
&lt;ul&gt;
&lt;li&gt;The Customize Reverse Engineer Templates command (see below) lets you customize how code is generated.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A connection string is added to the App/Web.config file and is used by the context at runtime. If you are reverse engineering to a class library, you will need to copy this connection string to the configuration file of the consuming application(s).&lt;/li&gt;
&lt;li&gt;This process is designed to help with the initial coding of a Code First model. You may need to adjust the generated code if you have a complex database schema or are using advanced database features.&lt;/li&gt;
&lt;li&gt;Running this command multiple times will overwrite any previously generated files, including any changes that have been made to generated files.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Customize Reverse Engineer Templates&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;Adds the default reverse engineer T4 templates to your project for editing. After updating these files, run the Reverse Engineer Code First command again to reverse engineer POCO classes, a derived DbContext, and Code First mappings using your project's customized templates.
&lt;ul&gt;
&lt;li&gt;The templates are added to your project under the CodeTemplates\ReverseEngineerCodeFirst folder.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;When right-clicking on a code file containing a derived DbContext class&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;View Entity Data Model (Read-only)&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;Displays the Code First model in the Entity Framework designer.
&lt;ul&gt;
&lt;li&gt;This is a read-only representation of the model; you cannot update the Code First model using the designer.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;View Entity Data Model XML&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;Displays the EDMX XML representing the Code First model.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;View Entity Data Model DDL SQL&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;Displays the DDL SQL to create the database targeted by the Code First model.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Generate Views&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;Generates pre-compiled views used by the EF runtime to improve start-up performance. Adds the generated views file to the containing project.
&lt;ul&gt;
&lt;li&gt;View compilation is discussed in the&amp;nbsp;&lt;a href="http://msdn.microsoft.com/en-us/library/cc853327.aspx"&gt;Performance Considerations&lt;/a&gt;&amp;nbsp;article on MSDN.&lt;/li&gt;
&lt;li&gt;If you change your model then you will need to re-generate the pre-compiled views by running this command again.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;When right-clicking on an Entity Data Model (*.edmx) file&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Generate Views&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;This is the same as the Generate Views command above except that, instead of generating pre-compiled views for a Code First model, it generates them for a&amp;nbsp;model created using the EF Designer.&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10389592" width="1" height="1"&gt;</description></item><item><title>Entity Framework Links #3</title><link>http://blogs.msdn.com/b/adonet/archive/2013/01/15/entity-framework-links-3.aspx</link><pubDate>Tue, 15 Jan 2013 23:14:51 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10385347</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>6</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10385347</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2013/01/15/entity-framework-links-3.aspx#comments</comments><description>&lt;p&gt;This is the third post in a regular series to recap interesting articles, posts and other happenings in the EF world.&lt;/p&gt;
&lt;p&gt;In December our team announced the &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/12/10/ef6-alpha-2-available-on-nuget.aspx"&gt;availability of EF6 Alpha 2&lt;/a&gt;. Scott Guthrie also &lt;a href="http://weblogs.asp.net/scottgu/archive/2012/12/11/entity-framework-6-alpha2-now-available.aspx"&gt;posted about this&amp;nbsp;release&lt;/a&gt;. The announcement post provides details of the features included in this preview. Of particular note, we were excited to include a contribution from &lt;a href="http://www.codeplex.com/site/users/view/AlirezaHaghshenas"&gt;AlirezaHaghshenas&lt;/a&gt; that provides significantly improved warm up time (view generation), especially for large models. We&amp;rsquo;ve also got some more performance improvements coming in the next preview of EF6. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=Roadmap"&gt;Roadmap&lt;/a&gt;&amp;nbsp;page on our CodePlex site provides details of all the features we are planning to include in EF6, including those that are not yet implemented.&lt;/p&gt;
&lt;p&gt;We shipped some &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/11/27/ef-fixes-in-visual-studio-2012-update-1.aspx"&gt;fixes for the EF Designer in Visual Studio 2012 Update 1&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There were a number of good posts about Code First Migrations . Doug Rathbone blogged about &lt;a href="http://www.diaryofaninja.com/blog/2012/12/04/fun-with-code-first-migrations-in-teams"&gt;using Code First Migrations in team environments&lt;/a&gt;. This one&amp;rsquo;s a bit older, but we wanted to point out a good post by Jarod Ferguson with some good &lt;a href="http://elegantcode.com/2012/04/12/entity-framework-migrations-tips/"&gt;tips for using Code First Migrations&lt;/a&gt;. Rowan Miller blogged about &lt;a href="http://romiller.com/2012/11/30/code-first-migrations-customizing-scaffolded-code/"&gt;customizing the code that is scaffolded by Code First Migrations&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Devart announced &lt;a href="http://blogs.devart.com/dotconnect/using-entity-framework-spatials-with-oracle-spatial-and-sharpmap.html"&gt;Spatial data type support in their EF provider for Oracle&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Diego Vega posted details about a &lt;a href="http://blogs.msdn.com/b/diego/archive/2012/12/12/workaround-for-performance-with-enumerable-contains-and-non-unicode-columns-against-ef-in-net-4-0.aspx"&gt;workaround for performance with Enumerable.Contains and non-Unicode columns against EF in .NET 4.0&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Julie Lerman published an article in MSDN Magazine about &lt;a href="http://msdn.microsoft.com/en-us/magazine/jj883952.aspx"&gt;shrinking EF models with DDD bounded contexts&lt;/a&gt;. She also blogged about an issue she has seen with &lt;a href="http://thedatafarm.com/blog/data-access/beware-machine-config-files-messing-up-code-first-provider-factories/"&gt;machine.config files messing up Code First provider factories&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In case you missed it, the EF Team is now on &lt;a href="http://twitter.com/efmagicunicorns" target="_blank"&gt;Twitter&lt;/a&gt; and &lt;a href="https://facebook.com/efmagicunicorns" target="_blank"&gt;Facebook&lt;/a&gt;, follow us to stay updated on a daily basis.&lt;/p&gt;
&lt;p&gt;Rowan Miller&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Program Manager&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Entity Framework Team&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10385347" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Entity+Framework/">Entity Framework</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/What_2700_s+New/">What's New</category></item><item><title>EF6 Alpha 2 Available on NuGet</title><link>http://blogs.msdn.com/b/adonet/archive/2012/12/10/ef6-alpha-2-available-on-nuget.aspx</link><pubDate>Mon, 10 Dec 2012 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10374628</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>26</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10374628</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2012/12/10/ef6-alpha-2-available-on-nuget.aspx#comments</comments><description>&lt;p&gt;&amp;nbsp;Around a month ago we released the first alpha of EF6. Today we are pleased to announce that availability of Alpha 2.&amp;nbsp;EF6 is being developed in an open source code base on CodePlex, see our &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/07/19/entity-framework-and-open-source.aspx"&gt;open source announcement&lt;/a&gt; for more details.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;We Want Your Feedback&lt;/h2&gt;
&lt;p&gt;You can help us make EF6 a great release by providing feedback and suggestions. You can provide feedback by commenting on this post, commenting on the feature specifications linked below&amp;nbsp;or &lt;a href="http://entityframework.codeplex.com/discussions/create"&gt;starting a discussion&lt;/a&gt; on our CodePlex site.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Support&lt;/h2&gt;
&lt;p&gt;This is a preview of features that will be available in future releases and is designed to allow you to provide feedback on the design of these features. It is not intended or licensed for use in production. &lt;strong&gt;The APIs and functionality included in Alpha 2 are likely to change significantly prior to the final release of EF6.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If you need assistance using the new features, please &lt;a href="http://stackoverflow.com/questions/ask"&gt;post questions on Stack Overflow&lt;/a&gt; using the entity-framework tag.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Getting Started with Alpha 2&lt;/h2&gt;
&lt;p&gt;The &lt;a href="http://msdn.microsoft.com/en-us/data/ee712906"&gt;Get It&lt;/a&gt; page provides instructions for installing the latest pre-release version of Entity Framework.&lt;/p&gt;
&lt;p&gt;&lt;span style="color: red;"&gt;&lt;em&gt;&lt;strong&gt;Note:&lt;/strong&gt; In some cases you may need to update your EF5 code to work with EF6, see &lt;a href="http://entityframework.codeplex.com/wikipage?title=Updating%20Applications%20to%20use%20EF6"&gt;Updating Applications to use EF6&lt;/a&gt;.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;What's Changed Since Alpha 1&lt;/h3&gt;
&lt;p&gt;The following features and changes have been implemented since Alpha 1:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;We accepted a pull request from &lt;a href="http://www.codeplex.com/site/users/view/AlirezaHaghshenas"&gt;AlirezaHaghshenas&lt;/a&gt;&amp;nbsp;that provides &lt;strong&gt;significantly&amp;nbsp;improved warm up time (view generation), especially&amp;nbsp;for large models.&lt;/strong&gt; View the &lt;a href="http://entityframework.codeplex.com/discussions/396130"&gt;discussion&amp;nbsp;about this change&lt;/a&gt; on our CodePlex site for more information. We're also working on some other changes to further improve warm up time.&lt;/li&gt;
&lt;li&gt;We accepted a pull request from &lt;a id="RequestFrom" title="Pull Request from UnaiZorrilla" href="http://www.codeplex.com/site/users/view/UnaiZorrilla"&gt;UnaiZorrilla&lt;/a&gt; that adds a &lt;strong&gt;DbModelBuilder.Configurations.AddFromAssembly method&lt;/strong&gt;. If you are using configuration classes with the Code First Fluent API, this&amp;nbsp;method allows you to easily&amp;nbsp;add all configuration classes defined in an assembly.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custom Code First Conventions&lt;/strong&gt; have evolved significantly since Alpha 1 based on your feedback and further design. We have updated the &lt;a href="http://msdn.microsoft.com/en-us/data/jj819164"&gt;walkthough&lt;/a&gt; for this feature and&amp;nbsp;the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Custom%20Conventions"&gt;feature specification&lt;/a&gt; on our CodePlex site. Custom Code First Conventions allow&amp;nbsp;write your own conventions to help avoid repetitive configuration. We provide a simple API for lightweight conventions as well as some more complex building blocks to allow you to author more complicated conventions.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DbContext can now be created with a DbConnection that is already opened&lt;/strong&gt;. Find out more about this change on the &lt;a href="http://entityframework.codeplex.com/workitem/45"&gt;related work item&lt;/a&gt; on our CodePlex site.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved&amp;nbsp;performance of Enumerable.Contains in LINQ queries&lt;/strong&gt;. Find out more about this change on the &lt;a href="http://entityframework.codeplex.com/workitem/245"&gt;related work item&lt;/a&gt; on our CodePlex site.&lt;/li&gt;
&lt;li&gt;Default transaction isolation level is changed to READ_COMMITTED_SNAPSHOT for databases created&amp;nbsp;using Code First, potentially allowing for more scalability and fewer deadlocks. Find out more about this change on the &lt;a title="http://entityframework.codeplex.com/workitem/7" href="http://entityframework.codeplex.com/workitem/7"&gt;related work item&lt;/a&gt; on our CodePlex site.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;What Else is New in EF6&lt;/h3&gt;
&lt;p&gt;The following features are included in Alpha 2 but have not changed significantly since Alpha 1:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Async Query and Save&lt;/strong&gt; - EF6 now supports the task-based asynchronous patterns that were introduced in .NET 4.5. We've put together a &lt;a href="http://msdn.microsoft.com/en-us/data/jj819165"&gt;walkthrough&lt;/a&gt; that demonstrates this new feature. You can also view the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Task-based%20Asynchronous%20Pattern%20support%20in%20EF."&gt;feature specification&lt;/a&gt; on our CodePlex site for more detailed information.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multiple Contexts per Database (Formerly known as 'Multi-Tenant Migrations')&lt;/strong&gt; - In previous versions of EF you were limited to one Code First model per database when using Migrations or when Code First automatically created the database for you, this limitation is now removed. If you want to know more about how we enabled this, check out the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Multi-tenant%20Migrations"&gt;feature specification&lt;/a&gt; on CodePlex.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Configurable Migrations History Table&lt;/strong&gt; - Some database providers require the appropriate data types etc. to be specified for the Migrations History table to work correctly. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=Migrations%20History%20Table%20Customization"&gt;feature specification&lt;/a&gt; provides details about how to do this in EF6.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Code-Based Configuration&lt;/strong&gt; - Configuration has traditionally been specified in a config file, EF6 also gives you the option of performing configuration in code. We've put together an &lt;a href="http://msdn.microsoft.com/en-us/data/jj680699"&gt;overview with some examples&lt;/a&gt; and there is a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Code-based%20Configuration"&gt;feature specification&lt;/a&gt; with more details.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dependency Resolution&lt;/strong&gt; - EF now supports the Service Locator pattern and we've factored out some pieces of functionality that can be replaced with custom implementations. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=EF%20Configuration%20and%20Extensibility"&gt;feature specification&lt;/a&gt; provides details about this pattern, and we've put together a &lt;a href="http://msdn.microsoft.com/en-us/data/jj680697"&gt;list of services that can be injected&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Updated Provider Model&lt;/strong&gt; - In previous versions of EF some of the core components were a part of the .NET Framework. In EF6 we've moved all these components into our NuGet package, allowing us to develop and deliver more features in a shorter time frame. This move required some changes to our provider model. We've created a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Rebuilding%20EF%20providers%20for%20EF6"&gt;document&lt;/a&gt; that details the changes required by providers to support EF6, and provided a &lt;a href="http://msdn.microsoft.com/en-us/data/jj730568"&gt;list of providers&lt;/a&gt; that we are aware of with EF6 support.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enums, Spatial and Better Performance on .NET 4.0&lt;/strong&gt; - By moving the core components that used to be in the .NET Framework into the EF NuGet package we are now able to offer enum support, spatial data types and the performance improvements from EF5 on .NET 4.0.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;What's after Alpha 2&lt;/h2&gt;
&lt;p&gt;Our&amp;nbsp; &lt;a href="http://entityframework.codeplex.com/wikipage?title=Roadmap"&gt; Roadmap&lt;/a&gt; provides details of all the features we are planning to implement in EF6, including the features we haven't started yet. If you want to try out the changes we've made since the last official pre-release, you can use the latest &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/09/17/ef-nightly-builds-available.aspx"&gt;signed nightly build&lt;/a&gt;. You can also check out the &lt;a href="http://entityframework.codeplex.com/wikipage?title=specs"&gt;Feature Specifications&lt;/a&gt; page on CodePlex for more information about new features that we are working on. You can also read our &lt;a title="Design Meeting Notes" href="http://entityframework.codeplex.com/wikipage?title=Design%20Meeting%20Notes"&gt;Design Meeting Notes&lt;/a&gt; to keep track of the evolving design of new features.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10374628" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/adonet/archive/tags/ADO-NET/">ADO.NET</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Entity+Framework/">Entity Framework</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/What_2700_s+New/">What's New</category></item><item><title>EF Fixes in Visual Studio 2012 Update 1</title><link>http://blogs.msdn.com/b/adonet/archive/2012/11/27/ef-fixes-in-visual-studio-2012-update-1.aspx</link><pubDate>Tue, 27 Nov 2012 20:44:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10372375</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>9</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10372375</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2012/11/27/ef-fixes-in-visual-studio-2012-update-1.aspx#comments</comments><description>&lt;p&gt;Visual Studio 2012 Update 1 is now &lt;a href="http://www.microsoft.com/visualstudio/eng/downloads#d-visual-studio-2012-update"&gt;available for download&lt;/a&gt;. This update includes three bug fixes for the Entity Framework Designer for Visual Studio 2012.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Nesting an .edmx file under a project folder would stop the code from being automatically regenerated when you saved changes to the edmx file. This was the &lt;a href="http://entityframework.codeplex.com/workitem/453"&gt;highest voted issue&lt;/a&gt;&amp;nbsp;on our CodePlex site and is fixed in VS2012 Update 1.&lt;/li&gt;
&lt;li&gt;The changes we made to code generation for models created in the EF Designer in Visual Studio 2012 were causing significantly more virtual memory to be used when working with an EF model in Visual Studio. VS2012 Update 1 includes a fix that reduces virtual memory usage below what it was in Visual Studio 2010. More &lt;a href="http://entityframework.codeplex.com/workitem/414"&gt;details about this issue&lt;/a&gt; are available on our CodePlex site.&lt;/li&gt;
&lt;li&gt;The EF Designer in VS2012 introduced a new feature that updated facets of entity properties (such as length, precision, etc.) based on the facets of the corresponding database column. This is done to propagate changes the user made to the database to the entities. However, with some database providers, such as Oracle, the discrepancy is intentional and facet propagation was producing invalid models. VS2012 Update 1 disables facet propagation for all providers except SQL Server. More &lt;a href="http://entityframework.codeplex.com/workitem/521"&gt;details about this issue&lt;/a&gt; are available on our CodePlex site.&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10372375" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Entity+Framework/">Entity Framework</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/What_2700_s+New/">What's New</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Visual+Studio+2012/">Visual Studio 2012</category></item><item><title>Entity Framework Links #2 </title><link>http://blogs.msdn.com/b/adonet/archive/2012/11/26/entity-framework-links-2.aspx</link><pubDate>Mon, 26 Nov 2012 22:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10371775</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10371775</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2012/11/26/entity-framework-links-2.aspx#comments</comments><description>&lt;p&gt;This is the second post in a regular series to recap interesting articles, posts and other happenings in the EF world.&lt;/p&gt;
&lt;p&gt;The EF Team is now on &lt;a href="http://twitter.com/efmagicunicorns" target="_blank"&gt;Twitter&lt;/a&gt; and &lt;a href="https://facebook.com/efmagicunicorns" target="_blank"&gt;Facebook&lt;/a&gt;, follow us to stay updated on a daily basis.&lt;/p&gt;
&lt;p&gt;Our team recently &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/10/30/ef6-alpha-1-available-on-nuget.aspx" target="_blank"&gt;announced the release of EF6 Alpha 1&lt;/a&gt;, the first preview of the EF6 release. The announcement post contains a bunch of links to walkthroughs and specifications for the exciting new features. There are some features we plan to include in the final release of&amp;nbsp;EF6 that aren't included in Alpha 1, see the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Roadmap"&gt;Roadmap&lt;/a&gt;&amp;nbsp;page for a complete list of EF6&amp;nbsp;features.&lt;/p&gt;
&lt;p&gt;Brice Lambson started a blog series on using EF with third party databases, so far he has covered &lt;a href="http://brice-lambson.blogspot.com/2012/10/entity-framework-on-sqlite.html" target="_blank"&gt;SQLite&lt;/a&gt;, &lt;a href="http://brice-lambson.blogspot.com/2012/10/entity-framework-on-mysql.html" target="_blank"&gt;MySQL&lt;/a&gt; and &lt;a href="http://brice-lambson.blogspot.com/2012/10/entity-framework-on-postgresql.html" target="_blank"&gt;PostgreSQL&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;At the //build/ conference, Rowan Miller presented on &lt;a href="http://channel9.msdn.com/Events/Build/2012/3-031" target="_blank"&gt;Building data centric applications for web, desktop and mobile with Entity Framework 5&lt;/a&gt;. You can get the &lt;a href="http://romiller.com/2012/11/20/build-2012-talk-video-and-source-code/" target="_blank"&gt;source code from the session&lt;/a&gt; on his blog.&lt;/p&gt;
&lt;p&gt;Julie Lerman blogged about &lt;a title="Making your way around the Open Source Entity Framework CodePlex Site" href="http://thedatafarm.com/blog/data-access/making-your-way-around-the-open-source-entity-framework-codeplex-site/" target="_blank"&gt;making your way around the Open Source Entity Framework CodePlex Site&lt;/a&gt; and about her experience &lt;a title="Digging in to Multi-Tenant Migrations with EF6 Alpha" href="http://thedatafarm.com/blog/data-access/digging-in-to-multi-tenant-migrations-with-ef6-alpha/" target="_blank"&gt;digging in to Multi-Tenant Migrations with EF6 Alpha&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We published some new content to the EF site, including &lt;a href="http://msdn.microsoft.com/en-us/data/jj691402" target="_blank"&gt;Stored Procedures with Multiple Result Sets&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/data/jj682076" target="_blank"&gt;WinForms Data Binding&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/data/jj715646"&gt;Entity Splitting with the EF Designer&lt;/a&gt;, and &lt;a href="http://msdn.microsoft.com/en-us/data/jj715645" target="_blank"&gt;Table Splitting with the EF Designer&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Rowan Miller&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Program Manager&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Entity Framework Team&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10371775" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Entity+Framework/">Entity Framework</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/What_2700_s+New/">What's New</category></item><item><title>EF6 Alpha 1 Available on NuGet</title><link>http://blogs.msdn.com/b/adonet/archive/2012/10/30/ef6-alpha-1-available-on-nuget.aspx</link><pubDate>Tue, 30 Oct 2012 23:13:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10363829</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>17</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10363829</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2012/10/30/ef6-alpha-1-available-on-nuget.aspx#comments</comments><description>&lt;h1&gt;EF6 Alpha 1 Available on NuGet&lt;/h1&gt;
&lt;p&gt;A couple of months ago we released the RTM of EF5. Today we are pleased to announce the first alpha of EF6.&amp;nbsp;EF6 is being developed in an open source code base on CodePlex, see our &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/07/19/entity-framework-and-open-source.aspx"&gt;open source announcement&lt;/a&gt; for more details.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;We Want Your Feedback&lt;/h2&gt;
&lt;p&gt;You can help us make EF6 a great release by providing feedback and suggestions. You can provide feedback by commenting on the feature specifications or &lt;a href="http://entityframework.codeplex.com/discussions/create"&gt;starting a discussion&lt;/a&gt; on our CodePlex site.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Support&lt;/h2&gt;
&lt;p&gt;This is a preview of features that will be available in future releases and is designed to allow you to provide feedback on the design of these features. It is not intended or licensed for use in production.&lt;/p&gt;
&lt;p&gt;If you need assistance using the new features, please &lt;a href="http://stackoverflow.com/questions/ask"&gt;post questions on Stack Overflow&lt;/a&gt; using the entity-framework tag.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Getting Started with Alpha 1&lt;/h2&gt;
&lt;p&gt;The &lt;a href="http://msdn.microsoft.com/en-us/data/ee712906"&gt;Get It&lt;/a&gt; page provides instructions for installing the latest pre-release version of Entity Framework.&lt;/p&gt;
&lt;p&gt;&lt;span style="color: red;"&gt;&lt;em&gt;&lt;strong&gt;Note:&lt;/strong&gt; In some cases you may need to update your EF5 code to work with EF6. See &lt;a href="http://entityframework.codeplex.com/wikipage?title=Updating%20Applications%20to%20use%20EF6"&gt;Updating Applications to use&lt;/a&gt; &lt;a href="http://entityframework.codeplex.com/wikipage?title=Updating%20Applications%20to%20use%20EF6"&gt;EF6&lt;/a&gt; for more details.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color: red;"&gt;&lt;em&gt;&lt;strong&gt;Note:&lt;/strong&gt; Alpha 1 is a very early preview of EF6. The APIs and functionality included in Alpha 1 are likely to change significantly prior to the final release of EF6.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;EF6 Alpha includes the following new features and changes.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Async Query and Save&lt;/strong&gt; - EF6 now supports the task-based asynchronous patterns that were introduced in .NET 4.5. We've put together a &lt;a href="http://msdn.microsoft.com/en-us/data/jj819165"&gt;walkthrough&lt;/a&gt; that demonstrates this new feature. You can also view the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Task-based%20Asynchronous%20Pattern%20support%20in%20EF."&gt;feature specification&lt;/a&gt; on our CodePlex site for more detailed information.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Custom Code First Conventions&lt;/strong&gt; - You can now write custom conventions for Code First to help avoid repetitive configuration. We provide a simple API for lightweight conventions as well as some more complex building blocks to allow you to author more complicated conventions. There is a &lt;a href="http://msdn.microsoft.com/en-us/data/jj819164"&gt;walkthough&lt;/a&gt; that covers both of these options and a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Custom%20Conventions"&gt;feature specification&lt;/a&gt; on our CodePlex site.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multiple Contexts per Database (Formerly known as 'Multi-Tenant Migrations')&lt;/strong&gt; - In previous versions of EF you were limited to one Code First model per database when using Migrations or when Code First automatically created the database for you, this limitation is now removed. If you want to know more about how we enabled this, check out the &lt;a href="http://entityframework.codeplex.com/wikipage?title=Multi-tenant%20Migrations"&gt;feature specification&lt;/a&gt; on CodePlex.&lt;strong&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Configurable Migrations History Table&lt;/strong&gt; - Some database providers require the appropriate data types etc. to be specified for the Migrations History table to work correctly. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=Migrations%20History%20Table%20Customization"&gt;feature specification&lt;/a&gt; provides details about how to do this in EF6.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Code-Based Configuration&lt;/strong&gt; - Configuration has traditionally been specified in a config file, EF6 also gives you the option of performing configuration in code. We've put together an &lt;a href="http://msdn.microsoft.com/en-us/data/jj680699"&gt;overview with some examples&lt;/a&gt; and there is a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Code-based%20Configuration"&gt;feature specification&lt;/a&gt; with more details.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dependency Resolution&lt;/strong&gt; - EF now supports the Service Locator pattern and we've factored out some pieces of functionality that can be replaced with custom implementations. The &lt;a href="http://entityframework.codeplex.com/wikipage?title=EF%20Configuration%20and%20Extensibility"&gt;feature specification&lt;/a&gt; provides details about this pattern, and we've put together a &lt;a href="http://msdn.microsoft.com/en-us/data/jj680697"&gt;list of services that can be injected&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Updated Provider Model&lt;/strong&gt; - In previous versions of EF some of the core components were a part of the .NET Framework. In EF6 we've moved all these components into our NuGet package, allowing us to develop and deliver more features in a shorter time frame. This move required some changes to our provider model. We've created a &lt;a href="http://entityframework.codeplex.com/wikipage?title=Rebuilding%20EF%20providers%20for%20EF6"&gt;document&lt;/a&gt; that details the changes required by providers to support EF6, and provided a &lt;a href="http://msdn.microsoft.com/en-us/data/jj730568"&gt;list of providers&lt;/a&gt; that we are aware of with EF6 support.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enums, Spatial and Better Performance on .NET 4.0&lt;/strong&gt; - By moving the core components that used to be in the .NET Framework into the EF NuGet package we are now able to offer enum support, spatial data types and the performance improvements from EF5 on .NET 4.0.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;What's after Alpha 1&lt;/h2&gt;
&lt;p&gt;If you want to try out the changes we've made since the last official pre-release, you can use the latest &lt;a href="http://blogs.msdn.com/b/adonet/archive/2012/09/17/ef-nightly-builds-available.aspx"&gt;signed nightly build&lt;/a&gt;. You can also check out the &lt;a href="http://entityframework.codeplex.com/wikipage?title=specs"&gt;Feature Specifications&lt;/a&gt; page on CodePlex for more information about new features that we are working on. You can also read our &lt;a title="Design Meeting Notes" href="http://entityframework.codeplex.com/wikipage?title=Design%20Meeting%20Notes"&gt;Design Meeting Notes&lt;/a&gt; to keep track of the evolving design of new features.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10363829" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/adonet/archive/tags/ADO-NET/">ADO.NET</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/Entity+Framework/">Entity Framework</category><category domain="http://blogs.msdn.com/b/adonet/archive/tags/What_2700_s+New/">What's New</category></item><item><title>Entity Framework Links #1</title><link>http://blogs.msdn.com/b/adonet/archive/2012/09/25/entity-framework-links-1.aspx</link><pubDate>Tue, 25 Sep 2012 21:17:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10353191</guid><dc:creator>Rowan Miller</dc:creator><slash:comments>6</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/adonet/rsscomments.aspx?WeblogPostID=10353191</wfw:commentRss><comments>http://blogs.msdn.com/b/adonet/archive/2012/09/25/entity-framework-links-1.aspx#comments</comments><description>&lt;p&gt;The EF team is starting a regular series to recap interesting articles, posts and other happenings in the EF world. Here is the first one…&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;EF5&lt;/h2&gt;  &lt;p&gt;Our team recently &lt;a title="EF5 Released" href="http://blogs.msdn.com/b/adonet/archive/2012/08/15/ef5-released.aspx"&gt;announced the release of EF5&lt;/a&gt;. As part of the release we also updated the &lt;a href="http://msdn.com/data/ef"&gt;EF MSDN site&lt;/a&gt;, making it the go to place for EF content. As part of the update we created a short (2min) &lt;a href="http://msdn.microsoft.com/en-us/data/jj590134"&gt;video that covers the different ways you can work with EF&lt;/a&gt;. We also created&amp;#160; a bunch of walkthroughs and videos that can be found on the &lt;a href="http://msdn.microsoft.com/en-us/data/ee712907"&gt;Getting Started page&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Julie Lerman blogged about the &lt;a href="http://thedatafarm.com/blog/data-access/vs2012-edmx-defaults-now-align-with-ef-team-guidance-re-dbcontext-usage/"&gt;new EF Designer in Visual Studio 2012 that generates DbContext code by default&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Jason Zander posted a &lt;a href="http://blogs.msdn.com/b/jasonz/archive/2012/07/23/my-favorite-features-entity-framework-code-first-and-asp-net-web-api.aspx"&gt;walkthrough showing EF5 and ASP.NET Web API in action&lt;/a&gt;. You can find the &lt;a href="http://aspnet.codeplex.com/SourceControl/changeset/view/daeab2f8de6f#Samples%2fNet45%2fCS%2fWebApi%2fEntityFrameworkCodeFirstSample%2fReadMe.txt"&gt;code from the walkthrough on CodePlex&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Rowan Miller demoed some new EF5 features in a &lt;a href="http://www.visualstudiolaunch.com/vs2012vle/Theater?sid=1774"&gt;10min session for the Visual Studio launch&lt;/a&gt;. Rowan also blogged about &lt;a href="http://romiller.com/2012/08/15/code-first-stored-procedures-with-multiple-results/"&gt;calling stored procedures with multiple result sets in Code First&lt;/a&gt; and &lt;a title="Permanent link to Customizing ‘Reverse Engineer Code First’ in the EF Power Tools" href="http://romiller.com/2012/05/09/customizing-reverse-engineer-code-first-in-the-ef-power-tools/"&gt;customizing ‘Reverse Engineer Code First’ in the EF Power Tools&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;EF6 &amp;amp; Open Source&lt;/h2&gt;  &lt;p&gt;In addition to releasing EF5 we also announced that we will be &lt;a title="Entity Framework and Open Source" href="http://blogs.msdn.com/b/adonet/archive/2012/07/19/entity-framework-and-open-source.aspx"&gt;developing EF6 in an open source code base&lt;/a&gt;. You can test out some of the features we’ve already checked in using the &lt;a title="EF Nightly Builds Available" href="http://blogs.msdn.com/b/adonet/archive/2012/09/17/ef-nightly-builds-available.aspx"&gt;nightly signed builds&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Arthur Vickers from our team posted a &lt;a href="http://blog.oneunicorn.com/2012/07/19/so-you-want-to-contribute-to-ef-part-1-introduction/"&gt;5 part series on contributing to the EF code base&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Rowan Miller    &lt;br /&gt;Program Manager     &lt;br /&gt;Entity Framework Team&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10353191" width="1" height="1"&gt;</description></item></channel></rss>