【问题标题】:.net core 1.0 visual studio referencing external dll.net core 1.0 Visual Studio 引用外部 dll
【发布时间】:2016-07-04 11:29:16
【问题描述】:

随着 .net 核心的发布,我一直在尝试构建一个简单的项目,但是每当我尝试在我的项目中添加 dll 引用时,我都会收到以下消息

.Net Core 项目仅支持在此版本中引用 .Net Framework 程序集来引用其他程序集,它们需要包含在 nuget 包中并引用该包

我在 RC2 中收到此消息,但在 RC1 中没有,是否有其他人遇到此问题,有人知道如何解决吗?除了 git issue 票 https://github.com/aspnet/Home/issues/1612

之外,我找不到与此相关的任何内容

【问题讨论】:

  • 如何在项目中添加 dll 引用?你能分享一个代码示例吗?
  • 不能真正添加​​参考代码作为它的更多操作,我右键单击参考 -> 添加参考... -> 浏览然后指向我需要 4.6 的 dll,然后一旦它在列表中,然后单击确定,我收到上述消息
  • @lexLi 对不起?除了您不恰当和无益的评论之外,我们正在讨论添加外部 dll 引用,如果我什至没有这些 dll 库之一的源代码会发生什么我将如何在同一个解决方案中创建一个单独的类库项目并且仍然让 dll 在 .net 核心项目中正确引用?添加外部 dll 库不需要额外的类库项目来添加引用。我认为这可能是一个错误stackoverflow.com/questions/38107573/…
  • @LexLi 这是一个相当不成熟的回应。通过创建另一个项目来代理引用确实有点愚蠢。在 RC2 中禁止添加外部引用,但应该为 .NET Core 的发布重新启用它。您是说 MS 不允许引用不在 NuGet 中的 DLL 是“正确的”吗?用只有 1 个人/一个小团队将要使用的包来阻塞 NuGet 是没有意义的。

标签: c# asp.net .net


【解决方案1】:

要在 .net 核心中引用外部 dll,您需要创建自己的 nuget 包。

NuGet 文档展示了如何从 dll:https://docs.nuget.org/create/hosting-your-own-nuget-feeds 创建包。您可以将该 nuget 包放在本地文件夹中并将其用作提要:[https://docs.nuget.org/create/hosting-your-own-nuget-feeds]

为此,您需要编辑 nuspec 文件并在 nuspec 文件中添加以下代码。

<package>
*******--Some code--*****
 <metadata>
  <references>
   <reference file="xxx.dll"/>
  </references>
 </metadata>
<--For addig reference of external dll-->
 <files>
  <file src="path\*.dll" target="lib\netCoreApp1.0"/>
 </files>

现在创建 .nupkg 文件并将此包安装到您的项目中。

希望此解决方案对您有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-28
    • 2017-06-07
    • 2016-06-11
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    相关资源
    最近更新 更多