繁体   English   中英

在项目之间共享DLL

[英]Sharing a DLL between projects

微软表示它现在处于平台中性,因此我试图仅使用VS Code构建Mac和Linux并部署到Azure。 为什么? 这主要是为了证明我能。

我们的项目有几个部分,包括几个不同的网站,一个Web API,呃API和一些其他位。 在我的Mac上,我已经构建了一个带有大量对象的.Net核心类库。命令行,dotnet构建,DLL输出,没问题。

我想把这个DLL放在构建MVC网站的Linux机器上 - 希望这个对象构成该站点的模型部分。 我无法弄清楚如何让网站项目引用我的DLL并使用这些对象。

我假设我将它复制到另一台机器,将它放在正在开发的站点的bin文件夹中,并在站点的project.json的Dependencies部分中引用它。 不。 我看到一些文章说.Net Core只适用于NuGet,它必须是一个包。 这是真的吗?

我发现并阅读了(如果不完全理解的话)在.net核心和.net框架之间共享的一切。 这是一个仅核心项目,因此不适用。 坦率地说,我迷失了,所谓的.Net Standard刚刚进入了我的视野。

因此,不要复制DLL,而是使用dotnet pack在Mac上构建nuget包,然后将复制到Linux机器上。 将它放在一个配置为本地nuget存储库的目录中(没有服务器或任何需要的东西),你就离开了。

我同意它并不像对DLL的引用那么简单,但它并不是太糟糕。 请注意,您需要对软件包进行适当的版本控制,以便工具系统可以检测软件包何时更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM