我想将我的控制器从我的主应用程序拆分为我的MVC3应用程序的专用DLL。但在这样做之后,我失去了所有的MVC3工具支持。经过一番挖掘后,我发现如果您希望在非Web应用程序项目中保留MVC3的工具支持,您只需要将相应的信息添加到项目文件中。
答案 0 :(得分:2)
首先通过右键单击VS并单击“卸载项目”或在任何纯文本编辑器中在visual studio之外编辑它来从VS卸载项目。如果使用VS,在卸载项目后,再次右键单击项目文件并选择编辑它。
在文件中,您应该在名为<ProjectGuid>
的第一个PropertyGroup中看到一个元素。在此元素下方创建一个名为<ProjectTypeGuids>
的新元素。在此元素内部放入MVC3项目类型的GUID。您还必须添加一个表示库语言的项目类型,VB或C#,在我的例子中它是C#。如果未尝试添加此GUId,则会在尝试重新加载项目时导致VS显示错误。
MVC3和C#
<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
MVC3和VB.NET
<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
保存更改后重新加载项目,你应该好好去!
答案 1 :(得分:1)
有时我真的很想知道人们为什么如此关心工具支持。这一定非常重要。老实说,我从来没有发现任何这种支持的使用。但您可以尝试将以下项目guid添加到类库.csproj中,以使VS将其视为ASp.NET MVC 3 Web应用程序,并可能添加一些工具支持:
<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>