回答:
Visual Studioを起動して、Webプロジェクト(またはコンソールアプリ-関係ありません)を作成します。
.Net標準の場合:
エラーがない場合は、サービスへのアクセスに使用する名前空間を設定するだけで、生成されます。
.Net Coreの場合
上記の方法のいずれかを使用すると、シンプルで非常に基本的なWCFクライアントが生成されます。生成されたコードで「YourservicenameClient」クラスを見つける必要があります。
参考のために、生成されたcsファイルはObj / debug(またはrelease)/ XsdGeneratedCodeにあり、DLLはTempPEフォルダーにあります。
作成されたサービスには、WSDLコントラクトで定義された各メソッドのメソッドが必要です。
クライアントをインスタンス化して、呼び出すメソッドを呼び出します-それだけです!
YourServiceClient client = new YourServiceClient();
client.SayHello("World!");
(デフォルトで作成されたものを使用せずに)リモートURLを指定する必要がある場合は、プロキシクライアントのコンストラクターでこれを簡単に行うことができます。
YourServiceClient client = new YourServiceClient("configName", "remoteURL");
ここで、configName
は使用するエンドポイントの名前(URLを除くすべての設定を使用します)であり、remoteURL
は接続するURLを表す文字列です(構成に含まれているものではありません)。
ビジュアルスタジオで。
エラーがなければ、オブジェクト参照とすべての関連メソッドでサービス参照を確認できるはずです。
WSDL.EXEユーティリティを使用して、WSDLからWebサービスプロキシを生成します。
次のようなクラスを含む長いC#ソースファイルを取得します。
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Web.Services.WebServiceBindingAttribute(Name="MyService", Namespace="http://myservice.com/myservice")]
public partial class MyService : System.Web.Services.Protocols.SoapHttpClientProtocol {
...
}
クライアント側のWebサービスを消費するコードで、
.Net Core プロジェクトに wsdl参照を追加する場合、「Web参照の追加」オプションはありません。
wsdl参照を追加するには、ソリューションエクスプローラーに移動し、Referencesプロジェクト項目を右クリックして、[ 接続されているサービスの追加]オプションをクリックします。
次に、「Microsoft WCF Webサービスリファレンス」をクリックします。
URIテキストボックスにファイルパスを入力し、WSDLをインポートします。
シンプルで非常に基本的なWCFクライアントを生成し、次のように使用します。
YourServiceClient client = new YourServiceClient();
client.DoSomething();