Asp.net mvc Visual Studio:如何覆盖默认值;“建立行动”;对于每个项目或解决方案的特定扩展类型?
我正在为来自许多程序集的asp.net mvc视图提供服务,并在生成后事件中将视图复制到主应用程序Asp.net mvc Visual Studio:如何覆盖默认值;“建立行动”;对于每个项目或解决方案的特定扩展类型?,asp.net-mvc,visual-studio,build,action,Asp.net Mvc,Visual Studio,Build,Action,我正在为来自许多程序集的asp.net mvc视图提供服务,并在生成后事件中将视图复制到主应用程序 然而,我意识到,当我在视图中更改某些内容时,只要按F5,更改就不包括在内。要查看更改,我必须做的是:保存、构建考虑以下项目文件大纲: <Project ToolsVersion="3.5" DefaultTargets="EmbedViews;Build" ...> ... <Target Name="EmbedViews"> <ItemGroup>
然而,我意识到,当我在视图中更改某些内容时,只要按F5,更改就不包括在内。要查看更改,我必须做的是:保存、构建考虑以下项目文件大纲:
<Project ToolsVersion="3.5" DefaultTargets="EmbedViews;Build" ...>
...
<Target Name="EmbedViews">
<ItemGroup>
<EmbeddedResource Include="Views\*\*.aspx" />
<EmbeddedResource Include="Views\*\*.ascx" />
</ItemGroup>
</Target>
</Project>
...
这将把Views\
中的所有aspx
和ascx
文件作为嵌入资源添加到您的库中。请注意,embeddeviews
是在Build
之前添加到DefaultTargets
的-这里的顺序很重要,我发现自己犯了这个错误:-)
由于编辑所有项目文件以获取此代码段很麻烦,因此您可以使用此代码段创建自己的项目模板
请让我知道这是否有帮助。如果有人想知道,如果你想让它在当前的和未来的项目上工作,仍然没有办法做到这一点
在VS 2017中,当存在“全部捕获”规则时添加新文件(例如,Content Include=“**ts”
),如果您添加新文件,它会将自己的行添加到
使用自己的BuildAction
,忽略预定义的“一网打尽”。您指向我在帖子中提到的一篇文章。你读过我的帖子还是只是扫描了标题?链接已失效,存档版本:如果你想在文件夹结构中包含任意数量的子体,请进行小修改:“Views\***.aspx”