.NETコア雑貨:WebAPIののXML要求と応答

通常の状況下では、restfult APIの戻りデータやモデルバインディング、デフォルトのJSON形式は時折、XML形式の要件を必要とし、当然のことながら、より一般的かつ便利です

戻りXMLのために、普通の一般的な方法は、各aciton方法でXMLFormatterなどシリアル化することです

XMLを受信するために、それはいくつかの追加のXML構文解析操作や、逆シリアル化プロセスです。

レコードの次およびXML要求と応答処理の使用がより便利WebAPIのを学び、教えてください間違っている、スプレーしない好きではありません。

.NETコアバージョン:2.2

XML形式のサポートを追加します

1、インストールパッケージMicrosoft.AspNetCore.Mvc.Formatters.Xml NuGet

2は、その後、Startup.ConfigureServicesコールAddXmlSerializerFormattersは System.Xml.Serialization.XmlSerializerの実装を設定します。

公共のボイドConfigureServices(IServiceCollectionサービス)
{ 
    services.AddMvc()。SetCompatibilityVersion(CompatibilityVersion.Version_2_2)。AddXmlSerializerFormatters(); 
}

レスポンスXMLデータ

アクションレベルは、応答コントローラレベルでXML形式内の特定の操作を指定するか、グローバル、単に追加したい[生み出し]  他のさらに複雑な処理ステップなしに、処理に応じて、XML形式になります、フィルタを

に応じて、XML形式で指定されたアクションメソッド:

[HTTPGET( "getstudent / {ID}")]
 [生成し( "アプリケーション/ XML")] 
パブリック学生GetStudent(int型のID)
{ 
    VAR OBJ =新しい生徒
    { 
        年齢= 12、
        NAME = "123123" 
    }。
    OBJを返します。
}

次のように直接的なリターンは次のようになります。

 XMLリクエスト

 使用したXML形式のデータ要求[消費し】

 次のコード:

次の例では、XML形式の要求、プログラムが自動的に学生モデルクラスを解析し、結合し、このオブジェクトは、(デフォルトの形式はWebAPIのを返された)JSON形式を返します。

[HttpPost( "poststudent")] 
[消費し( "アプリケーション/ XML")] 
パブリック学生PostStudent(学生OBJ)
{ 
    OBJを返します。
}

結果は以下の通りであります:

 

おすすめ

転載: www.cnblogs.com/qiuguochao/p/11129357.html