为什么ASP.NET Web deploy在更改开发人员计算机后重新发布所有内容

为什么ASP.NET Web deploy在更改开发人员计算机后重新发布所有内容,asp.net,webdeploy,Asp.net,Webdeploy,我已经多次遇到这个问题,每次我更改一台开发机器,做一个小的更改,它都会重新发布所有内容,甚至包括图像(jpg、png、gif),而比较窗口显示的根本没有区别 “解决方案”是重新发布所有内容,然后在这台机器上它将正常工作,然而,一旦我换到另一台机器,同样的问题就会发生。我再也受不了了…这种情况发生是因为默认情况下,Web部署使用文件修改日期来检查文件是否需要复制到目标。当您更改dev pc时,您将重新构建所有内容,有效地将文件修改时间戳设置为一个新的日期,而不是从旧的dev计算机发布时 从新版本开

我已经多次遇到这个问题,每次我更改一台开发机器,做一个小的更改,它都会重新发布所有内容,甚至包括图像(jpg、png、gif),而比较窗口显示的根本没有区别


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

这种情况发生是因为默认情况下,Web部署使用文件修改日期来检查文件是否需要复制到目标。当您更改dev pc时,您将重新构建所有内容,有效地将文件修改时间戳设置为一个新的日期,而不是从旧的dev计算机发布时

从新版本开始,您可以将web项目配置为使用校验和而不是修改时间戳。这一定能解决你的问题看

只需修改您的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>

真的

当您“更改开发机器”时,您上次更改的文件日期是否更改?谢谢,出差后我会验证!