当我尝试发布时,我会收到以下消息:
严重程度代码描述项目文件行抑制状态 错误"DestinationFiles“指1项,"SourceFiles”指2项。它们必须有相同数量的物品。
我的项目正在我的本地主机上工作,我现在正在寻找publish...but,我得到了上面的错误。我转换了我的项目从VS 2015和出版工作良好。为了确保我以前的发布配置文件不是问题所在,我删除了我的配置文件的旧工作副本,并设置了一个新的。我知道VS 2017是几天前刚刚发布的,任何帮助都是很棒的。
发布于 2016-11-19 22:05:25
我认为Microsoft.NET.Publish.targets文件中有一个bug。
我更改了DestinationFiles行(第99行和第127行)如下,现在它工作了
<Copy SourceFiles = "@(_ResolvedFileToPublishAlways)"
DestinationFiles="@(_ResolvedFileToPublishAlways -> '$(PublishDir)%(RelativePath)')"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
Retries="$(CopyRetryCount)"
RetryDelayMilliseconds="$(CopyRetryDelayMilliseconds)"
UseHardlinksIfPossible="$(CreateHardLinksForPublishFilesIfPossible)"
UseSymboliclinksIfPossible="$(CreateSymbolicLinksForPublishFilesIfPossible)">发布于 2016-12-14 20:15:33
这是一个已知的错误,并在VS2017 RC工具已知问题文档中提到:
无法发布 无法发布ASP.NET核心网络应用程序(.NET框架)
如果您试图发布一个ASP.NET核心网络应用程序(.NET框架),您将遇到以下错误:"DestinationFiles“指1项,"SourceFiles”指2项。他们必须有相同数量的物品
无
https://github.com/aspnet/Tooling/blob/master/known-issues-vs2017.md
回头看看是否提供了解决办法。
但是,在文件夹“C:\ Files\dotnet\sdk\1.0.0-preview4-004233\Sdks\Microsoft.NET.Sdk\build”“中编辑"Microsoft.NET.Publish.targets”并不适用于我。
发布于 2017-01-27 09:19:14
这个bug是在最新的中修复的,在我的例子中,它是最新的1.0.0Rc4-004578。
不幸的是,在新的版本中,他们决定.csproj文件甚至不需要默认的编译和资源模式,在默认情况下,msbuild任务将包括这些模式。
因此,如果它们包含在您的.csproj文件中,您将无法使用rc4进行编译。
下面是为我做这件事的步骤/改变:
{ "sdk": { "version": "1.0.0-rc4-004578" } }<ItemGroup Condition=" '$(Configuration)' == 'Debug' "> <Compile Include="**\*.cs" /> <EmbeddedResource Include="**\*.resx" /> </ItemGroup>dotnet --versoindotnet publish PATH\MyPorject.csproj -c Release -o OUT_DIR注意,我们在.csproj文件中保留了默认编译模式的部分,但在调试配置条件下,这是必要的,如果您希望在VS 2017 RC中继续编译和运行项目,它使用的是dotnet preview4。
只需记住您在那里的活动配置应该调试。
您可以在[https://github.com/dotnet/cli/issues/4759#issuecomment-274904448]的dotnet线程下找到有关这里讨论的问题的更多细节。
https://stackoverflow.com/questions/40690233
复制相似问题