将脚手架项添加到类库

时间:2014-06-10 20:17:45

标签: asp.net .net visual-studio asp.net-mvc-scaffolding

在Web项目中,当我右键单击项目或文件夹时,我会选择Add -> New Scaffolded Item。但是,在类库项目中尝试此操作时,该选项不存在。现在,我在我的web项目中添加项目并将其移动到我的类库中。

有没有办法添加" Scaffolded Item"到类库(或任何非网络项目)?

1 个答案:

答案 0 :(得分:0)

一种可能性是让Visual Visual Studio认为您的类库是ASP.NET MVC应用程序。例如,在VS 2013和ASP.NET MVC 5中,您可以在您喜欢的文本编辑器(在我的例子中为notepad.exe)中打开您的类库.csproj文件,并在<ProjectGuid>标记之后添加以下内容:

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

并替换:

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

使用:

<PropertyGroup>
  <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
  <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />

现在在Visual Studio中重新加载您的解决方案,当您右键单击类库项目时,您将找到一些新的上下文菜单。

但说实话,你为什么要依靠一些 magic 为你编写代码而不是自己编写代码呢?