Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc Visual Studio:如何覆盖默认值;“建立行动”;对于每个项目或解决方案的特定扩展类型?_Asp.net Mvc_Visual Studio_Build_Action - Fatal编程技术网

Asp.net mvc Visual Studio:如何覆盖默认值;“建立行动”;对于每个项目或解决方案的特定扩展类型?

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>

我正在为来自许多程序集的asp.net mvc视图提供服务,并在生成后事件中将视图复制到主应用程序


然而,我意识到,当我在视图中更改某些内容时,只要按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”