防止在nuspec包文件中嵌入互操作类型

时间:2016-11-21 09:28:47

标签: nuget nuget-package nuget-spec

我为互操作库创建了一个nuget包。使用此软件包时,Nuget会自动将“嵌入互操作类型”设置为“True”。但是,在我的项目中,这应该是“假的”。在Nuget中有没有办法说明互操作类型是否被嵌入?

1 个答案:

答案 0 :(得分:1)

我知道这是一个很老的问题,但如果有人遇到这个问题,请按照以下步骤操作:

在创建 NuGet 包时,添加一个工具文件夹并添加一个名为:install.ps1

在定义项目要求的 PowerShell 命令下面写下,就我而言,我必须为 SapROTWr 库添加 EmbedInteropTypes: false。

param($installPath, $toolsPath, $package, $project)

$project.Object.References | Where-Object { $_.Name -eq "Interop.SapROTWr" } |  ForEach-Object { $_.EmbedInteropTypes = $false }

现在将该包添加到您的项目中并检查属性。