首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VisualStudio2017 csproj在包安装上添加“怪异”文件

VisualStudio2017 csproj在包安装上添加“怪异”文件
EN

Stack Overflow用户
提问于 2018-06-13 14:20:01
回答 1查看 217关注 0票数 0

我的VS2017 csproj(https://natemcmaster.com/blog/2017/03/09/vs2015-to-vs2017-upgrade/)有一些问题。当我安装某些nuget软件包时,我会得到一些额外的文件被添加到我的项目中,而且大多数情况下,依赖关系甚至不能正常工作。它不会在较老的csproj上这样做。

两个例子:

  • 我有一个“自制”nuget (也是用VS2017 csproj制作的),它应该在安装和卸载时转换目标项目的本地app.config (基本上在安装时添加一行,在uninstlal上删除)。在较老的csproj上,它做它需要做的事情。使用VS2017 csproj,它不会执行转换,而是将两个转换文件添加到项目中。
  • 我需要在我的一个项目上安装名为"CefSharp.OffScreen“的包。对于一个老的,它的工作就像一个魅力。在VS2017 csproj上,依赖项甚至不存在(它有一个"!“),它添加了两个包含大量文件的"x64“和"x86”目录("dll's“等等)。在那里面。

对于VS2017项目中的类似问题,有什么了解的吗?

提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-14 08:52:27

对于VS2017项目中的类似问题,有什么了解的吗?

对于第一个示例,由于xdt转换,PackageReference环境中不支持。这包括基于sdk的项目以及使用PackageReference而不是packages.config的经典的packages.config框架项目。您可以跟踪这个GitHub问题获得更多详细信息。还有一个样品包装,它展示了如何使用构建时逻辑来应用转换来在所有环境中工作。

对于第二个示例,您可以在依赖程序包CefSharp.Common\build文件夹中找到一个CefSharp.Common.targets文件,在这个.target文件中,您可以看到以下代码:

代码语言:javascript
复制
  <ItemGroup>
    <CefSharpCommonBinaries32 Include="$(MSBuildThisFileDirectory)..\CefSharp\x86\*.*" />
    <CefSharpCommonBinaries64 Include="$(MSBuildThisFileDirectory)..\CefSharp\x64\*.*" />
    <CefSharpCommonBinariesAnyCPU Include="$(MSBuildThisFileDirectory)..\CefSharp\**\*.*" />
  </ItemGroup>

使用这个.target文件,nuget将在项目的x64x86文件夹下包含文件。

在旧的.csproj项目中,安装nuget包后通过下面的代码导入的.target文件,您可以在项目文件.csproj中检查它

代码语言:javascript
复制
<Import Project="..\packages\CefSharp.Common.63.0.3\build\CefSharp.Common.targets" Condition="Exists('..\packages\CefSharp.Common.63.0.3\build\CefSharp.Common.targets')" />

在项目运行时,将导入x86和x64文件夹下的文件。

当您使用新的.csproj项目(由文件project.assets.json导入的.target文件)时,当您将.target保存到project.assets.json中时,所有文件都将被导入到项目中。

这就是为什么您在安装软件包CefSharp.Common后获得了大量的dll文件的原因。因此,这不是一个问题,而是因为他们以不同的方式导入.targets

如果不希望在项目中显示这些dll文件,则可以返回packages.config

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50839577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档