我使用实体框架的代码优先和的LocalDB默认文件夹中创建,与下面的连接字符串:的LocalDB - 新代码优先数据库不再对
Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=MyApp;Integrated Security=True;
Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;
ApplicationIntent=ReadWrite;MultiSubnetFailover=False;MultipleActiveResultSets=true;
实例和其数据库文件是正确的这个路径中创建:
C:\Users\Me\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\MSSQLLocalDB
但我乱搞,我改名然后通过Visual Studio的“SQL Server的对象资源管理器”,其文件删除MSSQLLocalDB。现在我创建了它,通过EF Code First生成的所有数据库都在我的%USERPROFILE%
文件夹内创建,即C:\Users\Me
。
在“SQL Server对象资源管理器”中,如果我右键单击并选择“添加新数据库”,它将显示正确的路径。右键单击实例,然后属性显示“默认数据库位置”是正确的。
注册表配置是否正确:
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Microsoft SQL Server\UserInstances\{9F44D466-A9BA-40E3-9DEA-21E0638C80A2}]
...
"DataDirectory"="C:\\Users\\Me\\AppData\\Local\\Microsoft\\Microsoft SQL Server Local DB\\Instances\\MSSQLLocalDB"
我试图通过SqlLocalDB Utility创建一个新的实例使用不同的名称,但它的工作方式。还尝试重新启动,在删除实例之前和之后,没有成功。
我也试过重新安装。我卸载了Visual Studio(Web和桌面),MS Data Tools,MSSQL Compact和MS LocalDB,然后重新安装了VS,但没有成功。
我不想更改我的连接字符串并将其指向正确的路径,因为项目是由其他开发人员共享和维护的。
如何恢复此行为?我正在使用Visual Studio 2015 Express。
路径不是连接字符串的一部分,所以你真的有问题吗? – ErikEJ