2011-08-19 81 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

我有这个相同的问题,但这是由于模型类中有错误,导致它们无法生成。因此,没有与我给脚手架的名称匹配的模型,并且它的结论是我没有使用正确的名称空间。

所以......

  • 检查你的代码生成错误
  • 确保您的模型的命名空间是应用程序的