2016-08-24 6 views
1

.NET 4.xから.Net core 1.0にライブラリを移植しようとしていますが、VS 2015で取得している(多くの)1つのエラーは "XPath"ではないことですSystem.Xml名前空間の一部。 (IE:このusingステートメントが失敗した:System.Xml.XPathを使用して)私はNetStandard.Library 1.6の仕様で見たとき、それはまだ仕様の一部だよう.NET Core 1.0ではSystem.Xml.XPathがサポートされていますか? VS 2015はそうは思わない

はまだ、それが見えます:

https://github.com/dotnet/corefx/tree/master/src

何が起こっているのですか?

マイケル

答えて

3

ここには混乱があります。

  • 提供されるリンクは、.NETコア(xplat)実装の一部としてプログラムされたクラスライブラリをおおよそ反映したソースコードのリストです。ただし、これはnetstandard契約またはNETStandard.Libraryを1:1の関係に反映していません。 (例:System.Buffers)には、プラットフォームに依存しないライブラリがあります。これらのライブラリは、.NET Platform Standardの一部ではなく、.NET Core(これらのうちのいくつかは、https://www.nuget.org/packages/Microsoft.NETCore.App/)にのみ役立ちます。
  • System.Xml.XPath名前空間は、netstandard1.3 +の上のSystem.Xml.Xpathライブラリ/ NuGetに実装されています。したがって、プラットフォームに依存しないアセンブリとして利用できます。
  • netstandardは、.NETプラットフォーム(.NET Core、.NET Framework、Mono、Xamarin、今後のUnity3Dなど)で実装する必要がある一連のAPIをカバーしています。その上には、プラットホームに無関心な数多くのライブラリがあります(System.Xml.XPathまたはSystem.Collections.Immutableなど)。紛らわしく、これらは「.NET標準ライブラリ」の一部としてもカウントされます。しかし、メタパッケージNETStandard.Libraryは、私の謙虚な意見では、netstandardの契約部分だけをカバーしていますが、上には不可知論的な図書館は含まれていません。 System.Xml.XPathについては

BCL Library

これは何とかすべての理にかなっています。 廃止されました ".NET Platform Standard"(.NET実装の厳しい要件です)の要素ではなく、全員が利用できる ".NET Standard Library"の一部として利用可能なAPIです。使用するすべてのプラットフォーム

関連する問題