【问题标题】:.Net Core 1.1 with ADAL: The dependency NetStandard.Library >= 1.6.0 could not be resolved带有 ADAL 的 .Net Core 1.1:无法解析依赖关系 NetStandard.Library >= 1.6.0
【发布时间】:2016-12-02 08:33:57
【问题描述】:

我正在尝试在我的NetCore 1.1 项目中使用 ActiveDirectory 客户端。项目恢复正常,但没有构建。构建时出现错误The dependency NetStandard.Library >= 1.6.0 could not be resolved,指向 Microsoft.IdentityModel.Clients.ActiveDirectory

为什么不能满足这个依赖?从NetCore 1.0.1升级之前的库曾经工作过

这是我的 project.json(其中包含许多试图解决问题的额外内容):

{

  "dependencies": {
    "Microsoft.AspNetCore.Diagnostics": "1.1.0",
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.1.0",
    "Microsoft.NETCore.Portable.Compatibility": "1.0.1",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
    "Microsoft.Extensions.Configuration.UserSecrets": "1.1.0",
    "Microsoft.IdentityModel.Clients.ActiveDirectory": "3.13.7",
    "NETStandard.Library": "1.6.1",
    "Microsoft.AspNetCore.Authentication.OpenIdConnect": "1.1.0",
    "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.1.0",
    "Microsoft.AspNetCore.Mvc": "1.1.0",
    "Microsoft.AspNetCore.Routing": "1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
    "Microsoft.AspNetCore.StaticFiles": "1.1.0",
    "Microsoft.AspNetCore.Localization": "1.1.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",
    "Microsoft.EntityFrameworkCore.Tools.DotNet": {
      "version": "1.1.0-preview4-final",
      "imports": [
        "portable-net45+win8"
      ]
    },
    "Microsoft.Extensions.Configuration.Json": "1.1.0",
    "Microsoft.Extensions.Logging": "1.1.0",
    "Microsoft.Extensions.Logging.Console": "1.1.0",
    "Microsoft.Extensions.Logging.Debug": "1.1.0",
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
    "Microsoft.Extensions.Localization": "1.1.0",
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.1.0",
    "Microsoft.AspNetCore.Session": "1.1.0",
    "Microsoft.VisualStudio.Web.CodeGeneration.Core": "1.1.0-preview4-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore": "1.1.0-preview4-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": "1.1.0-preview4-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.Utils": "1.1.0-preview4-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.Templating": "1.1.0-preview4-final",
    "Microsoft.VisualStudio.Web.CodeGeneration": "1.1.0-preview4-final"
  },

  "tools": {
    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
      "version": "1.1.0-preview4-final",
      "imports": [
        "portable-net45+win8+dnxcore50",
        "portable-net45+win8"
      ]
    },
    "Microsoft.EntityFrameworkCore.Tools": {
      "version": "1.1.0-preview4-final",
      "imports": [
        "portable-net45+win8+dnxcore50",
        "portable-net45+win8"
      ]
    }

  },
  "runtimes": {
    "win10-x64": {},
    "win8-x64": {},
    "win7-x64": {}
  },
  "frameworks": {

    "netcoreapp1.1": {
      "type": "platform",
      "version": "1.0.1",

      "imports": [
        "dotnet5.6",
        "dnxcore50",
        "portable-net45+win8"
      ]
    }

  },

  "buildOptions": {
    "debugType": "portable",
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },

  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": true
    }
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "**/*.cshtml",
      "appsettings.json",
      "web.config"
    ]
  },

  "scripts": {
    "prepublish": [ "npm install", "bower install", "gulp clean", "gulp min" ],
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  },


}

【问题讨论】:

    标签: .net-core adal


    【解决方案1】:

    我也能重现这个问题。这个包似乎没有正确部署到 Nuget。

    当我在 Microsoft.IdentityModel.Clients.ActiveDirectory.nuspec 文件中评论以下行时,问题可能会得到解决:

    <!--<dependency id="NetStandard.Library" version="1.6.0" />-->
    

    但是,当我使用这个版本包时,我仍然得到异常。我也在尝试提交这个问题。

    作为一种解决方法,您可以将此包降级到版本 3.13.6,这对我来说效果很好。

    【讨论】:

      【解决方案2】:

      显然,将 nuspec 文件中“NetStandard”名称的大小写更改为“NETStandard”也可以解决此问题。

      “ADAL 3.13.7 需要“NetStandard”库并在应用程序中 常见的导入,应用程序要求 NETStandard,即一个套管 问题。”

      所以这里的解决方法是使用正确的大小写更新 adal 的 nuspec,即 NETStandard。

      在此处查看讨论:https://github.com/AzureAD/azure-activedirectory-library-for-dotnet/issues/559#issuecomment-261768339

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-07-27
        • 2018-12-15
        • 2014-05-06
        • 2022-01-17
        • 2020-08-16
        • 2019-12-19
        相关资源
        最近更新 更多