【发布时间】:2018-06-25 08:45:15
【问题描述】:
我对整个 NuGet 包的内容相对较新,目前我在包含引用的 COM DLL 方面有点挣扎。
我有一个用于 Autodesk Inventor 的小型实用程序库。所以我包含了 COM 参考。
现在我希望 Visual Studio 自动创建 NuGet 包
所以每次我构建我的项目时,Visual Studio 都会重新创建 .nuspec 文件并生成包,但遗憾的是没有将引用的 Inventor DLL 添加到 NuGet 包内的 lib 文件夹中。我阅读了很多关于手动添加或编辑 .nuspec 文件的内容,但是否有更简单的解决方案让 Visual Studio 为我完成这部分工作?
我正在使用 VS2017
提前致谢
【问题讨论】:
-
为依赖于 COM 服务器的库构建 nuget 包并不是一个好主意。你不能做任何事情来部署服务器,你不能确定用户安装了什么版本。不,您不应该尝试部署互操作库,“嵌入互操作类型”功能使其变得不必要。您忘记告诉我们出了什么问题,但显然用户需要安装 exact 相同版本的服务器,并且如果您公开任何公共成员中的互操作类型。
-
感谢您的帮助。我明白你的意思,但这让我回到了根本问题:是否有一种“最佳实践”方式来存储一个库,其中包含我在不同项目中一遍又一遍需要的常用功能?还是回到基本的正确方法,只拥有一个经典的 dll 文件?
标签: c# visual-studio nuget com-interop