WCFサービスのクライアントを作成し、前回作成したサービスにアクセスします。
WCFサービスの作成 - プログラマーな日々
WCFサービスを作成、起動します。 ...
クライアントの作成
前回作成したソリューションを開きます。
開いたソリューションに[Windowsフォームアプリケーション]のプロジェクトを新規作成します。
System.ServiceModelへの参照を追加します。
Form1.csにソースコードを記述します。
using System; using System.ServiceModel; using System.Windows.Forms; namespace Client { /// <summary> /// サービスのコントラクトを定義する /// </summary> /// <remarks> /// 前回作成したWCFサービスのコントラクトのソースコードをコピーし、プロキシとします。 /// </remarks> [ServiceContract(Namespace = "http://My.WCF.Samples")] public interface IServeice1 { [OperationContract] string getMessage(string inputMessage); } public partial class Form1 : Form { public Form1() { InitializeComponent(); button1.Click += button1_Click; } private void button1_Click(object sender, EventArgs e) { // エンドポイントを作成します。 EndpointAddress endPoint = new EndpointAddress("http://localhost:8000/WCFSampleService/HelloWCF"); // プロキシを作成します。 IServeice1 proxy = ChannelFactory<IServeice1>.CreateChannel( new BasicHttpBinding(), endPoint); // WCFサービスのメソッドを呼び出します。 try { string outputMessage = proxy.getMessage(".NET WCF"); MessageBox.Show(outputMessage); } catch (Exception ex) { MessageBox.Show("サービス呼び出し失敗:" + ex.Message); } } } }
動作確認
ソリューションをマルチスタートアップに設定します。
設定方法はこちらのエントリーを参考にしてください。
Visual Studioソリューションのマルチスタートアップが便利 - プログラマーな日々
Visual Studioでは、実行時に複数のプロジェクトを起動することができます。