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

时间:2016-07-04 16:42:13

标签: .net asp.net-core asp.net-core-mvc .net-core libgit2sharp

我正在开发.Net Core并尝试将> net 4.5应用程序迁移到.Net核心。在此过程中,我在尝试访问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;

错误信息是:

  

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

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

2 个答案:

答案 0 :(得分:2)

更新:从LibGit2Sharp(LibGit2Sharp 0.23.0-pre20160803182831)的8月3日版本开始,LibGit2Sharp现在支持常规.NET 4.5项目(使用基于(http://www.example.com?a=7&b='misc'&c=23)的解决方案)和基于新式.csproj的解决方案(如.NET Core中引入的那样)。

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

答案 1 :(得分:1)

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

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

如果你想使用带有.Net Core CLI的LibGit2Sharp软件包,我相信你必须等待:.Net Core CLI的下一个版本(计划于2016年秋季)将使用MSBuild,所以它可能会启动工作。或者,LibGit2Sharp的作者将来可能会发布兼容包。