Asp.net mvc 为什么MVC脚手架会失败?(VS2012与VS2013中的不同错误)

Asp.net mvc 为什么MVC脚手架会失败?(VS2012与VS2013中的不同错误),asp.net-mvc,visual-studio,t4,asp.net-mvc-scaffolding,Asp.net Mvc,Visual Studio,T4,Asp.net Mvc Scaffolding,我正在利用现有的大量业务对象代码库及其关联的数据访问层构建一个ASP.NET MVC web应用程序。当为业务对象创建脚手架视图时,脚手架引擎将失败,并在Visual Studio 2013中显示以下消息: 错误 运行所选代码生成器时出错: “该方法或操作未实现。” 在Visual Studio 2012中,错误为: 错误 运行所选代码生成器时出错: “扩展程序提供程序无法返回此对象的扩展程序。” 已尝试: 将默认模板复制到CodeTemplates文件夹:我在一些直接添加到项目中的POCO上

我正在利用现有的大量业务对象代码库及其关联的数据访问层构建一个ASP.NET MVC web应用程序。当为业务对象创建脚手架视图时,脚手架引擎将失败,并在Visual Studio 2013中显示以下消息:

错误

运行所选代码生成器时出错:
“该方法或操作未实现。”

在Visual Studio 2012中,错误为:

错误

运行所选代码生成器时出错:
“扩展程序提供程序无法返回此对象的扩展程序。”

已尝试:

  • 将默认模板复制到CodeTemplates文件夹:我在一些直接添加到项目中的POCO上使用了自定义模板,但它们在我想要使用的真实对象上失败了
  • 将代码模板包装在try/catch块中,并将catch设置为write to trace:我尝试了这个方法,但从未得到任何跟踪结果。我怀疑错误发生在模板本身开始处理之前
需要注意的是,业务对象被分为三个部分类。“添加视图”窗口中的“模型类”选择列表显示每个类名中的三个,但为任何业务对象类选择三个中的任何一个都会产生相同的错误


如何找出导致实际错误的原因,并纠正错误或找到解决方法?

根据我的经验,大多数错误要么是代码尚未编译(这有点奇怪,VS有时无法看到尚未编译的类),要么是使用了不同的命名空间


我希望这真的有助于检查您使用的EntityFramework的版本,如果它是>6.1.0的话 把它调到6.1.0。或者更低。
我不知道为什么会这样,但当我在我的项目中更改EntityFramework版本时,脚手架开始正常工作。

你能在堆栈跟踪中找到引发VS2013异常的方法或操作吗?不,这是问题的一大部分。我得到的只是带有错误的消息框。输出窗格中甚至没有显示任何内容。您是否可以共享一些使用脚手架的代码。这将很困难,因为代码位于一个封闭的网络上--我更感兴趣的是从脚手架系统中获取任何类型的反馈,以告诉我它在哪里出了问题。我的模型继承时也遇到了同样的问题在另一个程序集中定义的类型。如果我直接指定了外部类型或删除了继承,我可以使用生成器,但每次我试图维护程序集之间的继承关系时,我都会得到“方法或操作未实现”(这在VS 2015中)。烦人的