还有 25 天就要交期末作业了,虽然还有好些功能没完成,但是前端同学还是建议先放到云上跑一跑,于是我轻车熟路的用 VS 2017 搞起了 FTP 发布,然而,发布失败了,错误信息如下:
"DestinationFiles" refers to 1 item(s), and "SourceFiles" refers to 2 item(s).
经过一番 StackOverflow 与 Github issue 之后,终于在 VS 2017 的 Known Issue 中发现这个问题的 Workround ----None Avaliable!!!没有解决方案!!!
我强忍着心中的羊驼继续搜寻这个问题的解决方案,毕竟这是期末作业,不能随随便便就放弃这么多的学分,既然直接用 VS 发布行不通,那么我就用 Cli 吧!dotnet publish!好吧依旧失败,同样的错误。
给微软一个大写的服,说好的 Current 还是有这么多的 bug,然而我还是不死心,直奔 dotnet-cli 的 Github 终于找到了下面的解决方案:
去掉 csproj 中默认的 Content Include,如下,因为新的工具已经默认钦定了这些东西:
&Content Include="wwwroot\**\*;**\*.appsettings.web."&
&CopyToPublishDirectory&PreserveNewest&/CopyToPublishDirectory&
&/Content&
更新 Microsoft.NET.Sdk.Web 到最新的预览版
&PackageReference Include="Microsoft.NET.Sdk.Web"&
&Version&1.0.0-alpha--112&/Version&
&PrivateAssets&All&/PrivateAssets&
&/PackageReference&
删除 包含 iis-publish 的 Target ,新的工具已经集成了这个 IIS 发布工具,可以自动生成直接使用的 Web.config 了
上面三点做完之后, dotnet publish 可以正常使用了。
阅读(...) 评论()