为什么ASP.NET Web部署在更改开发机器后重新发布所有内容

时间:2013-10-24 11:08:39

标签: asp.net webdeploy

我多次遇到过这个问题,每次更改开发机器,做一个小改动,它重新发布所有内容甚至包括图像(jpg,png,gif),比较窗口显示没有任何区别

“解决方案”重新发布所有内容,然后在这台机器上它将正常工作,但是,一旦我换到另一台机器,就会发生同样的问题。我再也受不了了......

1 个答案:

答案 0 :(得分:2)

这是因为默认情况下,Web Deploy使用文件修改日期来检查是否需要将文件复制到目标。当您更改dev pc时,您可以重新设置所有内容,将文件修改时间戳设置为新的日期,而不是从旧的dev机器发布时。

从新的ASP.NET and Web Tools for Visual Studio 2013 Release开始,您可以将Web项目配置为使用校验和而不是修改时间戳。这必须解决你的问题。 - 见http://msdn.microsoft.com/en-us/library/ee942158.aspx#use_checksum

只需修改您的publich个人资料即可包含以下内容:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <MSDeployUseChecksum>true</MSDeployUseChecksum>
    <!— other settings omitted to keep the example short -->
    <PublishDatabaseSettings>
      <!— this section omitted to keep the example short -->
    </PublishDatabaseSettings>
  </PropertyGroup>
</Project>