私はWCFサービスを構築し、その機能は素晴らしいです!しかし、私はこれを既存のソフトウェアに実装しようとしています。私は即座に質問に取り掛かります。プロキシ生成コードを使用して、最初に使用したDLLを取り除くのですか?あるいは、私は両方を保ち、2つの区別を非常に明白にしますか?WCF別のベストプラクティス?
私が区別を保持することは、同じユーザーオブジェクトを表すServerUserとLocalUserプロパティを持つことです。しかし、アプリケーションサービスが利用できない場合、私のLocalUserプロパティは、アプリケーションが最初に実行したdllによって埋められます。
私の主な理由は、私のDLLを削除すると、私は単一の障害点があるという考え方です。何らかの理由で私のServiceHostが稼働していないだけで、DBサーバーが稼働していれば、私は自分のユーザーが依然として仕事をしてくれることを望んでいます。新しいWCF実装が利用する機能は、従業員が仕事をすることに依存しません。これは、WCFサービスが提供する便利な機能です。また、この種のロジックをサービスに組み込むことで、非IISホスト環境でのサービス変更をより容易に利用できるようになります。
また、ServiceHostが利用できない場合に手動でDBにアクセスすることを知っているクライアントのプロキシコードをプルダウンするときに、サービスのロジックを構築する方法はありますか?これが可能であれば、私の問題の90%は消えてしまうと思います。
ありがとうございます!
私は良い答えを出すためにもっと多くの情報が必要だと思いますが、2つのパスを(DBとサービスを通じて)直接使用することはお勧めしません - サービスを使い、DB層を隠す – Carsten
作成した手動プロキシをいつでも提供して、何でもできるようにすることができます。 –