2013-11-14 71 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