設計上の質問があります。サードパーティのサービスを利用するポータルを構築しています。
このサービスを DLL に入れました。1 つの DLL クラスを初期化するときに、1 つのサービスのサービス アドレスを渡します (残りのサービスにも同様に - 一部のサービスは異なるアドレスで)。
public LogonService (string address)
{
EndpointAddress epA = new EndpointAddress ( address );
proxyClient = new LogonServicePortTypeClient ( "LogonServicePort" , epA);
//added this InspectorBehavior for logging and errrors
proxyClient.Endpoint.EndpointBehaviors.Add ( new InspectorBehavior () );
}
これは私のコンストラクタです。次に、たとえば、すべての LogonService 機能が公開されています (login、logout、refresh など - 繰り返しますが、これは 1 つのサービスの 1 つの例です。それらはほとんどありません)。
この DLL は、MVC 4 インターネット アプリケーションによって使用されます。DLL クラスごとにクラスを保持する BusinessLogic フォルダーを追加することを考えました。これにより、示されているようにサービスが開始され、コントローラーが理解できる方法で結果がコントローラーに伝達されます。(これは私のデザインのアイデアです)
(再び IF) この設計が適切である場合、これらの DLL クラスを初期化し、再利用するために保存するなどのベスト プラクティスがどこでどのように行われるかを知りたいと思います。
私の長い質問を要約すると:
1. これは有効な設計ですか?
2. アプリケーション ライフのどこでこれらの Dll クラスを初期化する必要がありますか?
3. これらのサービス インスタンスをどのように保存しますか (パフォーマンスの点で) ?
4. 最後に、この設計が論理的でない場合、推奨される設計は何になりますか?
ありがとうギラド