ASP.NET WEP应用程序与磁盘数据库-如何?

ASP.NET WEP应用程序与磁盘数据库-如何?,asp.net,asp.net-mvc,entity-framework,asp.net-mvc-4,localdb,Asp.net,Asp.net Mvc,Entity Framework,Asp.net Mvc 4,Localdb,如何将.mdf文件(在VS2012中称为SQL Server数据库)用于实体框架 我收到以下错误消息: 键“attachdbfilename”的值无效。 这是我的连接字符串: 在Global.asax.cs中,应用程序_starti为| DataDirectory |设置正确的路径,如下所示: string newPath=System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory,“App_数据”) AppDomain.Curre

如何将.mdf文件(在VS2012中称为SQL Server数据库)用于实体框架

我收到以下错误消息:

键“attachdbfilename”的值无效。

这是我的连接字符串:

在Global.asax.cs中,应用程序_starti为
| DataDirectory |
设置正确的路径,如下所示:

string newPath=System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory,“App_数据”)

AppDomain.CurrentDomain.SetData(“DataDirectory”,newPath)

你们中有谁知道如何让这一切顺利进行吗


顺便说一句,它在本地运行我的web应用程序(即调试)时工作,在发布到我的在线域时不工作。

如果它在本地工作但不在线,则问题来自连接字符串的数据源部分。如果您想在运行时而不是通过management studio连接数据库,请删除
初始catalig
部分。因此,将其更改为如下内容:

<add name="DbContainer" 
  connectionString="metadata=res://*/Database.Db.csdl|res://*/Database.Db.ssdl
  |res://*/Database.Db.msl;provider=System.Data.SqlClient;
  provider connection string=&quot;data source=RemoteServerInstance;      
  Integrated Security=True;AttachDBFilename=|DataDirectory|\DataContext.mdf;
  MultipleActiveResultSets=True;App=EntityFramework&quot;"
  providerName="System.Data.EntityClient" />


您的在线域名上的目录路径是什么?它接受“\”吗?您是否尝试过使用指定的完整路径进行测试?它可能类似于:
D:\home\krbak\[projectname]\App\u Data
。我已尝试使用connectionstring中指定的此路径。如果我通过服务器浏览器浏览到MDF的连接,然后右键单击,选择“管理连接”,我会看到MDF文件的绝对路径,而不是相对路径。