【问题标题】:Cannot add ASP.NET MVC 5 Controller to simple ASP.NET MVC project in VS2013无法将 ASP.NET MVC 5 控制器添加到 VS2013 中的简单 ASP.NET MVC 项目
【发布时间】:2017-10-13 05:25:54
【问题描述】:

复制:
1) 在 VS 2013 Update 5 中,通过从已安装 > 模板 > Visual C# > Web 中选择“ASP.NET Web 应用程序”来创建解决方案。确保选择 .NET Framework 4.5.1。
2) 在出现的 New ASP.NET Project 对话框中,选择“Empty”并选中 MVC 选项。点击确定。
3) 解决方案准备就绪后,构建它。
4) 右键单击​​解决方案资源管理器中的 Controllers 文件夹,然后选择 Add > Controller...
5) 在 Add Scaffold 对话框中,选择“MVC 5 Controller - Empty”并单击 Add。
6) 在添加控制器对话框中,将名称更改为 HomeController 并单击添加。我收到以下错误消息(没有控制器):

错误

运行所选代码生成器时出错:
'由于以下错误而无法呈现模板:
'编译转换:语言不支持'Microsoft.VisualStudio.TextTemplating.TextTransformation.Errors' 在行号'60'和列号'14','编译转换:名称空间“System.ComponentModel”中不存在类型或名称空间名称“TypeDescriptor”(您是否缺少程序集引用?)”行号“73”和列号“87”,“编译转换:命名空间“System.ComponentModel”中不存在类型或命名空间名称“TypeDescriptor”(您是否缺少程序集引用?),...

并且错误文本以相同的方式继续多次,使用相同的 TypeDescriptor 问题描述,除了报告的行号是 106、139 和 172。
我添加了对 System.ComponentModel.dll 的引用(来自 GAC)但没有成功。我还尝试通过在上面的步骤 2 中选择“MVC”模板并添加另一个控制器来生成项目;同样的错误。我还从注册表中删除了 PendingDeletions 条目;清理了我的本地应用数据;修复,卸载并重新安装VS2013,都没有运气。还有其他想法吗?提前致谢!

【问题讨论】:

  • 我最近更新到 VS2013 更新 5,你的过程对我有用。可能您的模板已损坏。

标签: c# asp.net-mvc-5


【解决方案1】:

我在 Visual Sudio 2013 的 ASP.NET Web API 2 应用程序中遇到了同样的错误。这是我正在使用的解决方法:

1.) Right click folder where you want to create controller
2.) Click Add
3.) Click New Item
4.) Expand Visual C#, Expand Web
5.) At this point I click Web API Controller Class (v2.1)

这对我有用,但是右键单击文件夹,选择添加,控制器会出现错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-11
    • 2015-08-01
    • 1970-01-01
    • 2015-01-04
    • 1970-01-01
    • 2015-03-07
    • 2017-10-18
    • 1970-01-01
    相关资源
    最近更新 更多