1

データベースからxmlを取得し、ビジネスレイヤーに戻るデータアクセスメソッドがあります。リターンタイプはどうあるべきですか?単に文字列として返す必要がありますか?あるレイヤーから別のレイヤーにxmlを返すときのベストプラクティスは何ですか?

そのxmlをクライアントに返すか、クライアントの要求に基づいてjsonに変換する可能性があります。

4

2 に答える 2

3

この決定は、どのユースケースがあなたの方法をカバーすべきかによって決まると私は主張します。

文字列を返す場合:

  • メソッドを呼び出すコードは結果をXMLとして操作しないので、なぜXmlDocumentやXDocumentなどの複雑なオブジェクトをロードするCPUとメモリを浪費するのでしょうか。文字列を返すだけです!

  • 返されるXMLはシリアル化されたオブジェクトです。このXML文字列を実際の.NETオブジェクトに解析します。

XDocumentまたはのようなXMLオブジェクトを返す場合XmlDocument

  • メソッドを呼び出すコードは、結果をXMLとして操作します。これには、新しいノードや属性の追加、またはXML内のいくつかの要素や属性の読み取りが含まれます。

  • メソッドを呼び出すコードは、引数としてXMLオブジェクトを必要とする.NET基本クラスライブラリまたはサードパーティライブラリを使用します。

アップデート

クライアントのリクエストに応じて、「JSONまたはXML」の部分について言及するのを忘れました。

もちろん、クライアントがXMLを必要とする場合は、データをXMLとして返すだけで、クライアントがJSONを必要とする場合は、データをJSONとして返すだけです。

于 2012-07-12T17:49:38.430 に答える
1

データベースから文字列として取得し、XElement.Parse(XML_STING);を使用してXMLに解析します。。代わりにJSONに解析する必要がある場合は、DBからの取得方法を変更せずにJSONパーサーを使用できます。

于 2012-07-12T17:30:04.277 に答える