2


0

プログラムによるWCF構成をapp.configに変換するにはどうすればよいですか

ハードコードされた構成を持つ自己ホスト型WCFサーバーがあります。 いくつかの新しい構成機能(ポートの変更、sslの追加)を実装しようとするまで、サーバーは正常に機能しました。新しい構成設定は機能しませんでした(urrr …​. )そして、コードのどこに問題があるのか​​を見つけるのは難しいと思います。

WCFオブジェクトを宣言するコードを掘り下げる代わりに、別のアプローチを考えました。

すべての構成が読み込まれた後に、ハードコードされたWCF構成(全体)をテキストファイルのようなapp.configにダンプする方法はありますか? これにより、設定全体を簡単にグローバルに表示できます..

うーん .. ところで、逆方向への翻訳を行う方法を知っている人はいますか? コードの構成。

どんなアドバイスも歓迎します!

ofer

1 Answer


0


あなたはあなたのc#/ vbコードをどこかに自動的にダンプし、構成を構成ファイルxmlスキーマ(およびその逆)に変換する自動方法を見つけるとは思わないが、あなたが私の個人的な意見を聞いた場合、コードに構成をハードコーディングする強力な理由がある場合(そうする場合でも、私はそれを再考します)、コードからwcf構成を移動する必要があります。 構成はコードの責任ではありません。 これは構成です。つまり、「構成」を変更する必要がある場合、新しいビルドは必要ありません。

コードでは、サービス消費ロジックに集中する必要があり、バックエンドエンジンに設定を任せて処理します。 サービスの調整、最大/最小バッファサイズ、MaxItemsInObjectGraphクォータなどの設定を調整する必要がある場合があることに注意してください。 ハードコーディングされている場合、新しい展開を意味します。 構成ファイルまたは他のリポジトリにある場合、簡単な構成変更を意味します。

構成ファイルにすべての構成がある場合、環境から環境(Dev、DIT、QA、UAT、Pre-Prod、Production)にコードを移動するときに、必要に応じて環境間で異なる設定を行うことができます(ポートがあるため)使用した番号は既に使用されているか、ファイアウォールでブロックされています)。 リリース管理チームは、構成ファイルで適切に構成します。

サービス構成をより詳細に制御したい場合は、サービス用のファクトリサービスを作成することを検討してください。すべての構成を一元化された場所(データベース、xmlファイルなど)から取得し、コードをその場で構成します。飛ぶ。

私はそれが役立つことを願っています…​