MvcBuildViews似乎构建了比.csproj文件中包含的文件更多的文件

时间:2011-05-10 14:30:55

标签: asp.net asp.net-mvc

有没有办法将视图构建限制为只包含在.csproj文件中的文件?或者至少有一种方法可以排除某些文件夹的构建?

在我们的项目文件夹结构中,我们有一个\ Admin \ Mocks文件夹,其中包含大量模拟的.aspx和.cshtml文件,而\ Admin \ Mocks文件夹不包含在.csproj文件中(尽管\ Admin是),似乎该树中的所有文件都已构建。这当然会产生大量的构建错误。

我不确定这会有所不同,但我们的项目是使用Asp.Net 4的混合WebForms / Mvc3应用程序(包括WebForms和Razor View Engines)。

2 个答案:

答案 0 :(得分:3)

基于时间戳,我假设你最终解决了这个问题,但我在这里谷歌搜索解决同样的问题。

我们有一堆旧的Webforms视图,仅在我们更新应用程序时进行检查(未被项目引用)以供参考和进行A / B测试。 (Webforms - > Razor,MVC2 - > MVC4等)

这是一个问题,因为正在构建.cshtml和.aspx文件,而Webform视图中的错误正在破坏构建。

我们的解决方案是将旧视图文件从 Index.aspx 重命名为 Index.aspx.old < /强>

(在你的情况下,我会建议 Index.aspx.mock ?)

这意味着他们被排除在MvcBuildViews = True处理之外,但仍然可以轻松访问并且能够从Visual Studio中打开。

额外的好处是您可以更改该扩展名的默认打开状态以使用Webforms编辑器,这样您仍然可以突出显示所有内容。

答案 1 :(得分:2)

如果可能,创建一个单独的Web项目并将您不想构建的内容放在那里,确保将MVCBuildViews设置为false。