【问题标题】:The dependency Microsoft.Composition 1.0.27 does not support framework .NETCoreApp,Version=v1.1依赖 Microsoft.Composition 1.0.27 不支持框架 .NETCoreApp,Version=v1.1
【发布时间】:2016-11-28 14:10:42
【问题描述】:

当我将框架部分升级到:

"frameworks": {
    "netcoreapp1.1": {
      "dependencies": {
      },
      "imports": "dnxcore50"
    }
  }

我遇到错误

依赖 Microsoft.Composition 1.0.27 不支持框架 .NETCoreApp,版本=v1.1。

“Microsoft.VisualStudio.Web.CodeGeneration.Tools”

:下划线

【问题讨论】:

  • 好像无法升级
  • @fireydude 不幸的是它在 1.0.1 中工作。不知道该怎么办。
  • 也许发布你的整个 project.json 文件

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


【解决方案1】:

如果您正在处理 csproj 文件,您可以编辑它们并添加以下行:

<PackageTargetFallback>$(PackageTargetFallback);dotnet5.6;portable-net45+win8</PackageTargetFallback>

结果应该是这样的:

<PropertyGroup> <TargetFramework>netcoreapp1.1</TargetFramework> <PackageTargetFallback>$(PackageTargetFallback);dotnet5.6;portable-net45+win8</PackageTargetFallback> </PropertyGroup>

这就是 VS 转换器在将 project.json 升级到 csproj 时的做法。如果您需要其他目标,可以尝试将 project.json 文件转换为 csproj 文件并查看输出。

【讨论】:

    【解决方案2】:

    Microsoft.Composition 支持 .NET Framework 4.5、Windows 8 和 WindowsPhone 8.1 等目标,这意味着它应该可以工作。

    但它不针对 netstandard1.x,具体也不针对 netcoreapp1.x,因此您需要通过导入部分告诉 nuget 以恢复针对上述平台的 PCL 库:

    "frameworks": {
        "netcoreapp1.1": {
          "dependencies": {
          },
          "imports": ["dnxcore50", "portable-net45+win8"]
        }
    }
    

    "portable-net45-win8" 部分告诉它,还可以使用 .NET 4.5 和 Windows 8 目标恢复 PCL,因为它们应该在 99% 的情况下使用 .NET Core(Windows 运行时基于 System.Runtime 和 . NET Core 也是如此,这就是它起作用的原因。

    但是永远不要使用import来恢复非PCL或至少不支持win8/wpa8和net45的PCL。

    csproj 更新:

    要在新的.csproj 项目结构中做到这一点,您需要添加

    <PackageTargetFallback>$(PackageTargetFallback);dotnet5.6;dnxcore50;portable-net45+win8</PackageTargetFallback>
    

    相反。当您确定不使用任何使用其中任何一个的软件包时,可以选择省略 dotnet5.6dnxcore50

    【讨论】:

    • 为我工作。虽然修正了一个错字。它应该是portable-net45+win8 而不是portable-net45-win8。尝试删除 nuget 缓存 (C;\User\\.nuget),然后从头开始恢复。 VS 重启可能是必要的
    • 谢谢。那行得通。我刚刚清理、重建、重新启动 comp,现在它可以工作了。现在我可以使用 .netcore1,1
    猜你喜欢
    • 2016-10-31
    • 1970-01-01
    • 1970-01-01
    • 2017-07-31
    • 2018-05-28
    • 1970-01-01
    • 1970-01-01
    • 2016-06-27
    • 1970-01-01
    相关资源
    最近更新 更多