1

.NET フレームワークには、XML スキーマのプリミティブ データ型の一部を解析し、それらを適切な .NET データ型に変換する組み込み API がありますか? 例えば:

<someElement 
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:type="xs:dateTime">2013-03-01T18:36:00Z</someElement>

xsi:type属性をキーオフし、理想的には .NET の組み込み API を使用して、同等の .NET データ型を提供する C# コードを書きたいと思います。XmlConvert私は最近、いくつかのToXXX()静的メソッドを持つクラスを見つけました(のようToDateTime()に、適切なタイプを自動的に選択したいと思います.

重要な警告:xsd.exe XML スキーマ ファイルに基づいて C# クラス宣言を自動生成するツールの使用は、できれば避けたいと思います。

4

1 に答える 1

1

いいえ、.NET では自動的に必要なことを行うものはありません。

最も近いのは、オブジェクト シリアライザー/デシリアライザーによって自動的に生成されるコードです。これはxsi:type、XML 要素を逆シリアル化するときに実際に読み取り、さまざまなクラスのオブジェクトを生成するために使用できますが、日付などのプリミティブ型では実際には機能しません (そしてかなり使用するのは面倒です - クラスを宣言して逆シリアル化する必要があります)。

于 2013-03-02T21:41:21.447 に答える