我手动将ASP.NET MVC添加到现有的WebForms应用程序中......谢谢 this tutorial
但是,现在我没有菜单选项(右键单击Controllers文件夹或Views文件夹时)以显示Add Controller或Add View对话框。在创建一个全新的MVC项目时,我确实有这个。我怎样才能让visual studio意识到我在这个混合项目中使用MVC?
答案 0 :(得分:10)
技术上控制器只是放在controllers文件夹中的.CS文件,视图只是放在views文件夹中的.ASPX文件。您的控制器类需要从基本Controller类继承,并且您的ASPX页面需要从System.Web.Mvc.ViewPage继承。
只要在您的菜单中获取这些项目,请尝试打开项目文件并将projecttypeguids标记替换为此项目。
<ProjectTypeGuids>{603c0e0b-db56-11dc-be95-000d561079b0};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
答案 1 :(得分:2)
要修复您的计算机,请转到http://www.microsoft.com/en-us/download/details.aspx?id=41532处的URL,并确保同时安装“ASP.NET和Web Tools 2013.1 for Visual Studio 2012”和“ASP.NET和Web Frameworks 2013.1 - Visual Studio 2012“。
安装完成后,您应该将它们放在已安装的程序列表中。
项目类型GUID只是一种解决方法。但是在安装后会自动将其删除。
答案 2 :(得分:1)
我遇到了同样的问题,除了我开始使用Asp.Net MVC项目干净利落。不知道为什么会这样。虽然我完全清楚控制器是什么(Harv),但我仍然希望上下文感应菜单选项提供的自动生成。在编辑控制器文件时,CS菜单没有出现在解决方案资源管理器或文档窗口中,根据Walther视频,他只需右键单击Index方法,他就会获得一个cs菜单选项来创建一个视图,一个Add View对话框窗口。哦顺便说一句,我的项目指南与你提供的指标相同,所以没有用。
谢谢, 柏辽兹
答案 3 :(得分:0)
不要只更新您的MVC项目版本。在Nuget Package Manager控制台中触发此命令。
更新 - 打包Microsoft.AspNet.Mvc
重新启动visual studio项目。
也不要忘记这一点。 用于解决此错误
尝试安全透明方法'WebMatrix.WebData.PreApplicationStartCode.Start()'
Install-Package -Id Microsoft.AspNet.WebHelpers
答案 4 :(得分:0)
我在Visual Studio Enterprise 2015 update1中遇到此问题,并通过安装最新更新解决了这个问题。
答案 5 :(得分:-4)
ASP.NET MVC更倾向于使用约定而不是配置,所以除了Harv的答案之外,除了能够设置它之外别无他法。您必须右键单击名为Controllers的文件夹和名为Views的文件夹以获取这些选项。