2013-03-22 88 views
2

我正在使用實體框架的MVC應用程序。無法創建MyEntities的實例

我添加了新的Ado.Net實體數據模型文件,名爲Car。

在我的web.config文件中,我有這樣的:

<connectionStrings> 
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MyProjectName-20130322132315;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-MyProjectName-20130322132315.mdf" providerName="System.Data.SqlClient" /> 
<add name="CarEntities" connectionString="metadata=res://*/Models.Car.csdl|res://*/Models.Car.ssdl|res://*/Models.Car.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=PC\SQLEXPRESS;initial catalog=Car;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 

在我的控制,我試圖做到這一點:

CarEntities car_db = new CarEntities(); 

我也得到語法錯誤。 CarEntities無法識別。解決選項不存在。這是爲什麼發生?我發現我可以直接從我的db中獲取表格。但是,這並不工作:

int exist = (from x in User where x.username == username select x).Count(); 

的.edmx文件是在我的模型文件夾,並在我的控制器我有:

using MyProjectName.Models; 

在另一個解決方案,我完全能夠做到這一點:

MyEntities myDatabase = new MyEntities(); 
(from x in myDatabase.User where x.username == username select x).Count(); 
+1

你不能創建connectionString的實例... – MarcinJuraszek 2013-03-22 14:28:14

回答

0

解決的辦法是刪除這兩個文件:

enter image description here

然後將「代碼生成策略」屬性設置爲備用值。模型在設計器中打開時,此屬性在「屬性」窗口中可用。