我在我的 asp.net 应用程序中创建了一个基于 .mdf 文件的实体模型文件 (.edmx),并放置在我的App_Data
文件夹中。
首先是我的连接字符串,由实体框架向导创建:
<connectionStrings>
<add name="Sales_DBEntities"
connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string='data source=.\SQLEXPRESS;attachdbfilename="c:\users\ext\documents\visual studio 2010\Projects\WebProject_A\WebProject_A\App_Data\Sales_DB.mdf";integrated security=True;USER INSTANCE=TRUE;multipleactiveresultsets=True;App=EntityFramework'"
providerName="System.Data.EntityClient" />
</connectionStrings>
以上内容放在app.config
向导创建的文件中。
我也将相同的连接字符串复制到web.config
文件中(我不确定这是否有必要)。
稍后尝试在我的机器上运行相同的应用程序时遇到了两个问题(我在另一台机器上创建了应用程序)。
首先是关于用户实例:
由于启动用户实例的进程失败,无法生成 SQL Server 的用户实例。连接将关闭
我不真正理解的第一件事是用户实例实际定义的内容。
根据 MSDN :
用户实例是由父实例生成的 SQL Server Express 数据库引擎的单独实例
我的本地数据库是否被视为用户实例?
我真的很想对此事进行一些澄清,因为我遇到了建议将其标记为 False 的帖子,而我并不清楚原因。
从那里我遇到了另一个解决方案,它解释了对于这个问题,您需要在您的机器上的 SQL Server 中启用用户实例。
我已经完成了该帖子中解释的内容
但现在我遇到了一个新问题:
尝试为文件附加自动命名的数据库(我的 app_data\my.mdf 文件的完整路径) 存在同名的数据库,或者无法打开指定的文件,或者它位于 UNC 共享上。
我已经尝试删除下的所有文件
C:\Documents and Settings\(your user account name)\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\SQLEXPRESS
并像其他帖子中建议的那样重新启动,但我仍然找不到解决这个问题的明确解决方案。
我知道这是一个很长的帖子,但任何帮助将不胜感激
提前致谢。