Visual Studio 2012上的SSDT破坏然后修复,在VS2013上又破坏了

ger*_*wry 4 ef-code-first visual-studio-2012 visual-studio-2013 sql-server-data-tools

在Windows 8上安装Visual Studio 2012 Ultimate后,通过SQL Server对象资源管理器的SSDT无效.解决方案是从MSDN网站安装最新版本的VS2012.

一切都好.我可以看到数据库,没问题.无论我使用EF defaultConnectionFactory还是我自己的connectionString都无关紧要,无论哪种方式,我的所有代码第一个数据库都出现在VS2012 SQL Server对象资源管理器中.

不久前,我安装了Visual Studio 2013 Ultimate.在VS2013 Ultimate中,本地数据库,我通过属性看到的是这个连接字符串:

Data Source=(localdb)\Projects;
Initial Catalog=master;Integrated Security=True;
Connect Timeout=30;Encrypt=False;TrustServerCertificate=False  
Run Code Online (Sandbox Code Playgroud)

接下来,当我试图通过VS2012查看时,VS2012又被打破了.为了让VS2012再次运行,我从MSDN安装了2013年10月版的SSDT for VS2012.

虽然VS2012 SSDT现在再次通过SQL Server对象资源管理器工作,但不幸的是,其行为与VS2103中的SSDT相同.

我能够通过LINQPad4进行连接,这有一些优势,因为只需右键单击一个表名即可获得有用的LINQ选项.

首先使用EF 6.0.1代码.

ger*_*wry 9

线索是数据源=(localdb)\ Projects ;

EF 6.0.1将数据库置于此处:Data Source =(localdb)\ v11.0 ;

Data Source=(localdb)\v11.0;
Integrated Security=True;Connect Timeout=15;
Encrypt=False;TrustServerCertificate=False
Run Code Online (Sandbox Code Playgroud)

在vs2012/vs2013的SSDT中[查看,SQL Server对象资源管理器],
右键单击节点"SQL Server",然后单击"添加SQL Server ..."

键入"(localdb)\ v11.0"作为服务器名称,然后单击" 连接".

您现在应该在SQL Server对象资源管理器中看到"(localdb)\ v11.0 "和"(localdb)\ Projects ".

您的代码第一个数据库将位于"(localdb)\ v11.0 " 下的"数据库"节点中.

FWIW,我不知道为什么微软会做出这个恼人的改变.