WebForm项目到MVC - 缺少上下文菜单项

时间:2013-11-04 11:11:10

标签: asp.net asp.net-mvc-4 webforms episerver

我有一个重要的webform项目需要集成MVC4。 MVC控制器等......工作正常。但是我没有获得MVC类型的上下文菜单项,例如右键单击控制器方法时添加视图(参见下面 - 这是我想要查看的添加视图。我的项目中缺少它。)

enter image description here

我尝试创建一个空白的MVC项目,然后为此交换Web表单csproj文件并读取所有webform元素,但它以各种方式打破了网站,我没有时间解决。无论如何我真的不想在这个兔子洞里走下去 - 我怀疑这是错误的做法。

我尝试通过使用文本编辑器编辑将正确的projecttype guid添加到csprojj文件中,例如。

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

变为

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

但我仍然没有得到正确的上下文菜单项。

有谁能告诉我我错过了什么?

非常感谢您的帮助

修改

此链接为MVC3提供了一个示例,并提供了我想要实现的目标。但项目类型guid崩溃了网站(因为它是MVC3),我自己的努力没有工作

http://www.britishdeveloper.co.uk/2011/05/convert-web-forms-mvc3-how-to.html

我认为进一步的细节可能无关紧要

该项目是EPiServer Relate + 7的安装。一个新站点正在从此开始,但该站点的大部分将是MVC(我希望)。但我们将使用重新存在的Web表单元素用于社区类型页面。没有时间或预算来转换这些。

我认为这与解决方案无关。我认为问题是通用的而不是EPiServer特有的。

1 个答案:

答案 0 :(得分:4)

尴尬!!!

我几乎把这个做对了。我只需要在更改项目类型Guid

时重新启动Visual Studio

所以 - MVC4的项目类型Guid是

{E3E379DF-F4C6-4180-9B81-6769533ABE47};

,完整元素是

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

但是 - 别忘了重启Visual Studio(Doh !!!)

我会保留这个问题以防其他人遇到同样的问题

感谢大家的时间