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

ori*_*rip 13 asp.net-mvc visual-studio

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

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

是否可以启用向导?

Cor*_*ory 11

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

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

(请参阅将ASP.NET MVC 2项目升级到ASP.NET MVC 3)

  • -1:@orip告诉他已经更改了GUID.Guids在这里不是问题.他的问题是:**如何使这些上下文菜单出现在不同的文件夹而不是直接`Controller`和`Views`**. (2认同)

Ale*_*sev 6

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

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

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

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

适用于MVC和MVC 2.


Vla*_*lad 5

对于MVC 4:

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


ori*_*rip 2

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