2013-11-14 44 views
4

我是新来asp.net的MVC 4的ASP.NET MVC 4,关键“attachdbfilename”

下面的值无效是我的连接字符串

<add name="MovieDBContext" 
    connectionString="Data Source=(LocalDB)\v11.0; 
         Initial Catalog=Movies; 
         AttachDbFilename=|DataDirectory|\Movies.mdf; 
         Integrated Security=True" 
    providerName="System.Data.SqlClient" /> 

我收到以下错误时尝试通过url访问特定控件

键'attachdbfilename'的值无效。

错误本身说这是由于错误的连接字符串,但我找不到问题在哪里。 我正在使用VisualStudio Management Studio。

+1

'AttachDbFilename = | DataDirectory | \ Movies.mdf'该文件是否存在? – James

+0

即时关注本教程 http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model 如何知道该文件是否存在? – Daryl

+1

默认情况下| DataDirectory |是你的应用文件夹。也许这也是一个重复:http://stackoverflow.com/questions/17525905/unable-to-retrieve-metadata-mvc-application/17526947#17526947 – James

回答

6

试着改变你的连接字符串:

<add name="MovieDBContext" 
    connectionString="Data Source=.;Initial Catalog=Movies;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" 
    providerName="System.Data.SqlClient" /> 

更改数据源到:Data Source=.;Data Source=.\SQLEXPRESS;

之后,您需要配置权的App_Data访问。 对于Win7,在属性中的安全选项卡上添加具有完整权限的用户网络服务。

发现类似的问题:

asp.net mvc Invalid value for key 'attachdbfilename'

还是在我看来,这可能只是你的连接字符串中一个错字。因为您没有转义字符(LocalDB)\ v11

试着写Data Source=(LocalDB)\\v11;

+0

非常感谢你freshbm .. 你给了我最好的解决方案 :) – Daryl