在混合MVC / WebForms ASP.NET应用程序中“添加控制器”/“添加视图”

时间:2009-10-21 12:13:12

标签: asp.net-mvc visual-studio

我有一个现有的WebForms项目,我正在添加MVC页面。我创建了一个MVC项目并复制了项目类型guids。

它工作正常,但我无法让Visual Studio在我的控制器和视图目录上显示“添加控制器”或“添加视图”向导(它们不是/Controllers/Views ,他们在/Foo/Controllers/Foo/Views)。

是否可以启用向导?

7 个答案:

答案 0 :(得分:11)

对于MVC 3,ProjectTypeGuids应如下所示:

<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

(见Upgrading an ASP.NET MVC 2 Project to ASP.NET MVC 3

答案 1 :(得分:6)

要获得完整的设计器支持混合项目,您需要在项目文件中添加MVC“项目类型”。

打开项目文件,将 ProjectTypeGuids 标记替换为

<ProjectTypeGuids>{F85E285D-A4E0-4152-9332-AB1D724D3325};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

之后,您将在“旧”ASP.NET项目中看到新的上下文菜单(“添加视图”,“添加区域”,“添加控制器”等)

适用于MVC和MVC 2。

答案 2 :(得分:5)

对于MVC 4:

<ProjectTypeGuids>{E3E379DF-F4C6-4180-9B81-6769533ABE47};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

答案 3 :(得分:2)

我放弃了这一点。相反,我有一些基本的Resharper片段。太糟糕了,这是不可配置的。

答案 4 :(得分:2)

这是MVC3的指南:

{E53F8FEA-EAE0-44A6-8774-FFD645390401};

卸载您的项目,打开csproj文件并将GUID添加到标记的开头。没有额外的空格或换行符,然后重新加载项目。喜欢这个

<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

答案 5 :(得分:1)

也许你可以启用它们,但为什么要这么麻烦?只需点击两下即可获得这些向导:右键单击文件夹,单击Add - New item,然后选择“MVC View Page”或“MVC Controller Page”。它们不在上下文菜单中,但它们仍然非常接近...:)

答案 6 :(得分:1)

此问题已解决。我有一个混合项目,我遇到了同样的问题。无法在上下文菜单中看到“添加视图/添加控制器”。它现在已经解决了。请参阅以下链接Context menu to Add Controller/View missing