1

私はライブラリに取り組んでおり、従来の .NET Framework だけでなく .NET コア用にもコンパイルできるようにしたいと考えています。私は、.NET Framework 4.5 で問題なく動作する従来の VS ソリューションから始めました。次に、次のproject.jsonようなファイルを追加しました。

{
  "version": "0.1.3-*",

  "frameworks": {
    "net45": {
      "dependencies": {
      }
    },
    "dnxcore50": {
      "dependencies": {
        "NETStandard.Library": "1.0.0-rc2-23811",
        "System.Net.Http": "4.0.1-beta-23516",
        "System.Security.Principal": "4.0.1-beta-23516",
        "System.Security.Cryptography.Hashing.Algorithms": "4.0.0-beta-23225",
        "System.Security.Cryptography.X509Certificates": "4.0.0-beta-23516",
        "System.Xml.XDocument": "4.0.11-beta-23516"
      }
    }
  }
}

今では .NET コアで正常にコンパイルされますが、 VS 2015.1は、project.json. 次のコードをファイルに追加しました。

"runtimes": {
  "win": {}
}

Frameworks/net45 レベルで追加しようとしましたが、これは役に立ちませんでした。ルートレベルで追加する必要がありますが、次のエラーが表示されます

< assembly > は、DNXCore,Version=v5.0 上の < assembly >のコンパイル時参照アセンブリを提供しますが、win と互換性のあるランタイム アセンブリはありません。

dnxcore で project.json ファイルを使用する方法に関するドキュメントは多数ありますが、従来の .NET フレームワークで project.json を使用する方法に関するドキュメントはほとんどありません。今後数年間で最も重要なフレームワークとなる従来の .NET フレームワークとの互換性を維持しながら、開発者がライブラリを dnxcore に移植することを思いとどまらせるため、これは残念です。

4

0 に答える 0