.Net Core VS2015,无法加载 DLL 'git2-785d8c4':找不到指定的模块。 (HRESULT 异常:0x8007007E)

.Net Core VS2015, Unable to load DLL 'git2-785d8c4': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

我正在研究 .Net Core 并尝试将 >net 4.5 应用程序迁移到 .Net Core。在此过程中,我在尝试访问 git .dll

时发现以下错误

以下是我的 Project.json:

  "frameworks": {
    "net451": {
      "dependencies": {
        "Data": "1.0.0-*",
        "NLog": "4.3.5",
        "HtmlAgilityPack": "1.4.9",
        "LibGit2Sharp": "0.22.0",
        "RestSharp": "105.2.3",
        "Unofficial.Ionic.Zip": "1.9.1.8"
      }
    }

我在下面的代码行收到错误。

if (Repository.IsValid(basePath) == false)

包含命名空间:

using LibGit2Sharp;
using LibGit2Sharp.Handlers;

错误信息是:

Unable to load DLL 'git2-785d8c4': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

我想知道是否有任何其他方法可以让我在 .Net Core 中使用此功能。

更新: 从 8 月 3 日构建的 LibGit2Sharp (LibGit2Sharp 0.23.0-pre20160803182831) 开始,LibGit2Sharp 现在支持常规的 .NET 4.5 项目(那些使用 .csproj基于解决方案)和基于新式 project.json 的解决方案(如在 .NET Core 中引入的那样)。

注意LibGit2Sharp仍然不支持.NET Core,只支持新的项目结构。请参阅 https://github.com/libgit2/libgit2sharp/pull/1318 了解更新。

LibGit2Sharp 包依赖于 LibGit2Sharp.NativeBinaries 包。由于这是一个 native package,它使用 MSBuild 文件将本机库复制到输出目录。

.Net Core CLI 不使用 MSBuild,我相信因此,它不支持基于 MSBuild 的本机包。

如果你想将 LibGit2Sharp 包与 .Net Core CLI 一起使用,我相信你将不得不等待:下一个版本的 .Net Core CLI(计划于 2016 年秋季)将使用 MSBuild,因此有可能刚开始工作。或者,LibGit2Sharp 的作者可能会在未来发布一个兼容包。