0

私は現在、API とやり取りするシステムのコンポーネントを (c# で) 設計しています。API 呼び出しの形式は次のとおりです。

http:// <name of api site>\< JSP page name>?<parameter set>

呼び出しは、呼び出しの結果またはエラー メッセージを含む xml ドキュメントを返します。最終的には、コンポーネントが次の型のオブジェクトを返すようにします。

 public readonly class APIResult<T>
 {
     public bool Success {get; set;}
     public T Details {get; set;}
 }

私の現在の計画は、URL を作成するクラスを作成し、それを (タイプ T の) 別のジェネリック クラスに渡して、URL を使用して API を呼び出すことです。逆シリアル化された XML 結果。

SO の専門家に 2 つの質問があります。

1) 誰でもこのアプローチに問題があるか、私の意図を達成するためのより良い方法を提案できますか?

2) 関数に渡されたパラメーターで string.format を単純に使用するのではなく、URL を作成する洗練された方法はありますか。

どうもありがとう、

ケチャップ

4

1 に答える 1

0

3つの推奨事項:

  1. Successプロパティの使用は避けてください。このプロパティを使用すると、APIにアクセスするたびにチェックする必要があります。あなたはどこでもこのようなコードを持つことをやめるでしょう:

    if(result.Success){//何かをする} else{//そしてここに...何!?}

    OOPでは、エラーコード/フラグよりも例外が望ましいです。

  2. 属性(装飾)を使用して、API応答を自動的に逆シリアル化します(コードなしで)。

  3. UriBuilderを使用して...まあ、uriをビルドします:http://msdn.microsoft.com/en-us/library/system.uribuilder.scheme.aspx

于 2013-01-16T18:18:14.597 に答える