-1

enter image description here我想創建模型:add > class > ado.net entity,爲我的數據庫第一個項目,也想通過asp.netscaffolding創建CRUD操作,但失敗用必要的代碼創建一個模型,因此我沒有創建腳手架。 在我的模型文件AllahHelp.Context.cs中,沒有代碼,只有文本「ErrorGeneratingOutput」。錯誤:名稱空間不能直接包含成員,如字段EntityFramework.dll'無法找到

錯誤1:

A namespace cannot directly contain members such as fields or methods F:\project\WebApplication8\WebApplication8\Models\AllahHelp.Context.cs 1 1 WebApplication8

錯誤2:

Compiling transformation: Metadata file 'C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools..\IDE\EntityFramework.dll' could not be found F:\project\WebApplication8\WebApplication8\Models\AllahHelp.tt 1 1 WebApplication8

回答

1

如果將您.TT文件轉換成類文件錯誤,類文件就只能 「ErrorGeneratingOutput」 源文件,這會導致「命名空間不能直接包含成員,如字段」錯誤,但實際上並沒有任何關係。

您的實際錯誤聽起來像是您缺少對EntityFramework.dll的引用。右鍵單擊該項目,選擇「管理NuGet軟件包...」,然後在您的項目中找到並安裝EntityFramework。

在某些情況下,我也遇到了一個問題,因爲轉換髮生在複製文件之前,引用的dll從不會被複制,因爲發生錯誤並停止進程。在這種情況下,您需要暫時從項目中移除模型,成功編譯項目,然後再添加模型。

根據this similar question也可能是因爲您的安裝路徑。如果這是你的問題,請嘗試找到DLL的位置,並更正環境變量VS120COMNTOOLS(控制面板 - >系統 - >高級系統設置 - >環境變量 - >系統變量)

(小心更改系統變量,儘管如此。)

+0

謝謝sahuagin。我已經安裝了實體框架,但同樣的問題。 –

+0

@EngrMuhammadEnayetAbdullah不知何故,或其他,VS無法找到'EntityFramework.dll'。根據[這個類似的問題](http://stackoverflow.com/questions/19664833/metadata-file-not-found-data-entity-model)它可能是因爲你的安裝路徑。如果這是你的問題,嘗試找到DLL的位置,並更正VS120COMNTOOLS(控制面板 - >系統 - >高級系統設置 - >環境變量 - >系統變量)的環境變量 –

+0

thanks.but不能解決我的問題 –

相關問題