基本上,我遵循了一个教程,然后决定删除.mdf
文件。
现在,每当我尝试运行应用程序时,我都会得到以下错误(此线程的标题)。我得到错误的代码如下所示(ASP.NET mvc4):
OdeToFoodDB db = new OdeToFoodDB();
public ActionResult Index()
{
var model = db.Restaurants.ToList();
return View(model);
}
我的连接字符串如下:
<add name="DefaultConnection"
connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=OdeToFoodDb;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\OdeToFoodDb.mdf"
providerName="System.Data.SqlClient" />
我尝试过查看SQL Server对象资源管理器,但它看起来如下所示:
此外,在服务器资源管理器中,我看不到任何数据连接。
当我尝试在服务器资源管理器中添加新连接时,我看不到任何名为OdeToFoodDb
的数据库。
对于这个宽泛的问题,我很抱歉,但我是实体框架的新手,不太明白这里有什么问题。
发布于 2013-11-25 00:05:09
我认为对于SQL Server Local Db,您不应该使用Initial Catalog
属性。我建议使用:
<add name="DefaultConnection"
connectionString="Data Source=(LocalDb)\v11.0;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\OdeToFoodDb.mdf"
providerName="System.Data.SqlClient" />
我认为本地数据库不支持同一mdf文件上的多个数据库,因此不支持指定一个初始目录(或者不是很好地支持,我有一些奇怪的错误)。
发布于 2013-09-17 13:06:31
从应执行此操作的连接字符串中删除此行;) "AttachDbFilename=|DataDirectory|whateverurdatabasenameis-xxxxxxxxxx.mdf“
发布于 2017-07-12 22:24:18
您已经在服务器资源管理器中安装了该数据库的旧副本。因此,这是服务器对象资源管理器/ SQL服务器中的一个简单的命名冲突。在决定将其移动到Apps_Data文件夹之前,您可能已经创建了相同的数据库目录名称。因此该数据库名称已经存在,只需删除即可。
只需进入Visual Studio > View > SQL Server Object Explorer并删除旧的数据库名称及其连接即可。再次重试您的应用程序,它应该会在App_Data中安装.mdf文件,并在服务器资源管理器中再次创建完全相同的数据库。
https://stackoverflow.com/questions/17012839
复制相似问题