2011-08-19 114 views
3

我已經安裝MvcScaffolding時沒有任何問題,但是當我嘗試執行腳手架請求時,出現錯誤「DbContext.Task.t4」與其他缺少的文件不存在。我有一個名爲Task的模型,我認爲它是指它,但我在如何修復這個錯誤方面有所損失?MVC 3腳手架控制檯運行時腳手架出錯

「支架控制器任務-ModelType任務-ControllerName TasksController -DbContextType TasksDbContext」

安裝-封裝MvcScaffolding

  • PM>安裝-封裝MvcScaffolding
  • 試圖解決依賴'T4Scaffolding(≥1.0.2)'。
  • 試圖解析依賴性'EntityFramework(≥4.1.10311.0)'。
  • 成功安裝'MvcScaffolding 1.0.2'。
  • 成功將'MvcScaffolding 1.0.2'添加到MvcApplication1。

錯誤

  • PM>腳手架控制器任務-ModelType任務-ControllerName TasksController -DbContextType TasksDbContext

腳手架TasksController ...

查找-ScaffolderTemplate:無法在文件夾下找到'DbContext.Task.t4'模板['C:\ Development \ MVCPLTaskmanager \ MvcApplication1 \ packa' ($ c,$ a)return。 < < < < $ C @a + CategoryInfo:NotSpecified:(:) [查找-ScaffolderTemplate],異常 + FullyQualifiedErrorId:T4Scaffolding.Cmdlets.FindScaffolderTemplateCmdlet

GET-項目類型:找不到一個類型匹配名稱「MvcApplication1 .Models.TasksDbContext」。嘗試指定完全限定的類型名稱,包括名稱p ace。 在C:\開發\ MVCPLTaskmanager \ MvcApplication1 \包\ T4Scaffolding.1.0.2 \工具\ EFDbContext \ T4Scaffolding.EFDbContext.ps1:45字符:39 + $ foundDbContextType = GET-項目類型< < < <($ dbContextNamespace +「 。」 + $ DbContextType) - 項目$項目 + CategoryInfo:NotSpecified:(:) [獲取,項目類型],出現InvalidOperationException + FullyQualifiedErrorId:T4Scaffolding.Cmdlets.GetProjectTypeCmdlet

調用,棚架:創建數據庫上下文TasksDbContext,但可以找不到它作爲項目項目 在C:\ Development \ MVCPLTaskmanager \ MvcApplication1 \ packages \ MvcScaffolding.1.0.2 \ tools \ Controller \ MvcScaffolding.Cont roller.ps1:71 char:40 + $ dbContextScaffolderResult =腳手架< < < < DbContext -ModelType $ foundModelType。全名-DbContextType $ DbContextType - 面積$區-Project $工程中的 牛逼-CodeLanguage $ CodeLanguage -BlockUi + CategoryInfo:NotSpecified:(:) [調用-棚架],RuntimeException的 + FullyQualifiedErrorId:T4Scaffolding.Cmdlets.InvokeScaffolderCmdlet

回答 事實證明,我的模型的名稱空間需要與MVC項目相同。一旦我改變了命名空間腳手架的工作。

+0

你可以添加你在這裏的答案命名空間下面的答案並接受它?此問題在搜索中標記爲未答覆。 –

回答

0

我有這個相同的問題,但這是由於模型類中有錯誤,導致它們無法生成。因此,沒有與我給腳手架的名稱匹配的模型,並且它的結論是我沒有使用正確的名稱空間。

所以......

  • 檢查你的代碼生成錯誤
  • 確保您的模型的命名空間是應用程序的