Мой проект пакета Nuget структурирован следующим образом (очень просто):
- lib
MyCom.dll
- tools
Init.ps1
Инициирование содержимого ps1:
param($installPath, $toolsPath, $package, $project)
$project.Object.References | Where-Object { $_.Name -eq "MyCom" } | ForEach-Object { $_.EmbedInteropTypes = $false }
Спецификация Nuget:
<?xml version="1.0"?>
<package >
<metadata>
<id>***</id>
<version>***</version>
<title>***</title>
<authors>***</authors>
<owners>***</owners>
<licenseUrl>***</licenseUrl>
<projectUrl>***</projectUrl>
<iconUrl>***</iconUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>***</description>
<releaseNotes>***</releaseNotes>
<copyright>Copyright 2018</copyright>
<tags>***</tags>
<references>
<reference file="MyCom.dll" />
</references>
</metadata>
<files>
<file src="lib\MyCom.dll" target="lib" />
</files>
</package>
Я не знаю, почему init не устанавливает встраивание взаимодействия myCom.dll в false.То же самое происходит, если я использую Install.ps1.
Я использую VS 2015.