コンテクスト
.NET Stackを使用して、アプリケーションをエンドツーエンドで開発しました。したがって、次のようなものを管理しているとしましょう。
WPFクライアント<=>Webサービス:
- 開発)プレーンリファレンス(IISに展開されていないVS内のWCFサービスプロジェクトへの直接呼び出し)
- 本番環境)リモートWebサービス[IIS @リモートサーバー、接続するにはVPNが必要]
Webサービス<=>データベース:
- 開発)SQLServerExpressローカルDB[@開発マシン]
- 本番)SQL Server DB [@本番サーバー、WSと同じ]
「手動の方法、正しい方法」(http://www.code-magazine.com/Article.aspx?quickid=0809101)を実装していることに注意してください。したがって、個別の契約/クライアントプロキシなど...
質問
前に説明したようなセットアップをエレガントな方法で取得するにはどうすればよいですか?つまり、web.config変換を使用して、デバッグとリリースの間で接続文字列を切り替えることができるため、Webサービス<=>データベースは簡単です。しかし、どうすれば「接続」をクライアントアプリからWebサービスに自動的に切り替えることができますか?
本番環境では、プロキシへの参照を使用し、app.configファイルにエンドポイントを記述しています。開発では、Webサービス自体への単純な参照が必要になると思います。[デバッグ/リリース構成間の参照を追加/削除する必要がありますか?はいの場合、これをプログラムでどのように達成できますか?...私は完全に失われました]。
お時間をいただきありがとうございます!;)
編集:
@AlexanderBalteが示唆しているように、開発動作はメソッドの直接呼び出しにすぎません。メインの開発マシンにアプリサーバーがありません。