0

新しい C# クラス ライブラリ プロジェクト内から Web サービスを呼び出す必要があります。Web サービスにはまだアクセスできません (リリースされるまで、地理的な場所が異なり、ネットワークが閉じられています)。ただし、そのための WSDL があり、新しいクラス ライブラリ プロジェクトの Web 参照を WSDL に追加しました。

ここでの問題は、WSDL が基づいているサービス アドレスを構成できる場所がわからないことです。今のところ WSDL スタブに対して開発するのは問題ありませんが、それを他の開発センターにリリースするとき、私のサービス呼び出しが機能するように、サービスの正しいアドレスを設定できるようにする必要があります。

ここに一般的な慣行はありますか?つまり、追加できる構成ファイルのエントリか何かですか?

4

2 に答える 2

0

VS を使用して Web 参照を追加した場合、対応する設定が .config ファイルに自動的に作成されます。

これは、Settings.settings で表示/変更することもできます。

NB デフォルトでは、VS はこの設定をデフォルト値を生成するように設定します (これは、参照を追加するために使用した元の値に基づいており、生成されたコード ファイルのどこかに埋もれていると思います)。これを無効にするには、プロジェクトの [プロパティ] --> [設定] を表示し、WSDL 設定を強調表示してから、[プロパティ] タブ (ドッキング ウィンドウ) で GenerateDefaultValueInCode = False を設定します。

展開したら、関連する .config ファイルの値を変更することで WSDL の場所を更新できます。


編集: Web 参照 URL の動作プロパティを動的に設定する必要があります。

于 2013-08-07T13:05:03.057 に答える
-1

app.config でエンドポイント ノードを探し、さまざまな環境の URL を変更します

<configuration>
  <system.serviceModel>
    <bindings>      
       ...
    </bindings>
    <client>
        <endpoint address="#URL#"
            binding="xxx" bindingConfiguration="xxx"
            contract="xxx" name="xxx" />
于 2013-08-07T13:13:53.550 に答える