首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法将文件*.mdf附加为数据库

无法将文件*.mdf附加为数据库
EN

Stack Overflow用户
提问于 2013-06-10 02:33:20
回答 16查看 114.1K关注 0票数 77

基本上,我遵循了一个教程,然后决定删除.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的数据库。

对于这个宽泛的问题,我很抱歉,但我是实体框架的新手,不太明白这里有什么问题。

EN

回答 16

Stack Overflow用户

发布于 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文件上的多个数据库,因此不支持指定一个初始目录(或者不是很好地支持,我有一些奇怪的错误)。

票数 127
EN

Stack Overflow用户

发布于 2013-09-17 13:06:31

从应执行此操作的连接字符串中删除此行;) "AttachDbFilename=|DataDirectory|whateverurdatabasenameis-xxxxxxxxxx.mdf“

票数 16
EN

Stack Overflow用户

发布于 2017-07-12 22:24:18

您已经在服务器资源管理器中安装了该数据库的旧副本。因此,这是服务器对象资源管理器/ SQL服务器中的一个简单的命名冲突。在决定将其移动到Apps_Data文件夹之前,您可能已经创建了相同的数据库目录名称。因此该数据库名称已经存在,只需删除即可。

只需进入Visual Studio > View > SQL Server Object Explorer并删除旧的数据库名称及其连接即可。再次重试您的应用程序,它应该会在App_Data中安装.mdf文件,并在服务器资源管理器中再次创建完全相同的数据库。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17012839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档