- 作者: 笠原一浩
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2014/10/05
- メディア: オンデマンド (ペーパーバック)
- この商品を含むブログを見る
Webサービス
- 1週間で学ぶIT基礎の基礎 - .NETでWebサービスを始めてみよう---目次:ITpro
- [ASP.NET]Ajax.NETでデータセットやコレクションを操作するには? - @IT
- [VS2010] ASP.NET Web サービス プロジェクト (.asmx) はどこへ? – THE TRUTH IS OUT THERE
- Webサービスを作成する - DoboWiki
WEB参照
サービス側にメソッド、リクエスト、レスポンスクラスを作成。下記のように記述する。
サービス側(WebServiceTest1.asmx.cs)
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services; using WebServiceForAsmx.Data.Request; using WebServiceForAsmx.Data.Response; namespace WebServiceForAsmx.Service { /// <summary> /// WebServiceTest1 の概要の説明です /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // この Web サービスを、スクリプトから ASP.NET AJAX を使用して呼び出せるようにするには、次の行のコメントを解除します。 // [System.Web.Script.Services.ScriptService] public class WebServiceTest1 : System.Web.Services.WebService { [WebMethod] public string HelloWorld() { return "Hello World!!"; } [WebMethod] public string HelloWorld2(string s) { return "Hello World -> " + s; } [WebMethod] public ResponsePersonData HelloWorld3(RequestPerson reqData) { ResponsePersonData resData = new ResponsePersonData(); resData.Name = reqData.Name; resData.Address = reqData.Address; return resData; } } }
クライアント側
private void button1_Click(object sender, EventArgs e) { WebServiceTest1.WebServiceTest1SoapClient c = new WebServiceTest1.WebServiceTest1SoapClient(); MessageBox.Show(c.HelloWorld()); MessageBox.Show(c.HelloWorld2("aaaaaa")); WebServiceTest1.RequestPerson reqData = new WebServiceTest1.RequestPerson(); reqData.Name = "aida"; reqData.Address = "Tokyo"; WebServiceTest1.ResponsePersonData resData = c.HelloWorld3(reqData); MessageBox.Show(resData.Name +" - "+ resData.Address); }
App.config
<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> </startup> <system.serviceModel> <bindings> <basicHttpBinding> <binding name="WebServiceTest1Soap" /> </basicHttpBinding> </bindings> <client> <endpoint address="http://localhost:50137/Service/WebServiceTest1.asmx" binding="basicHttpBinding" bindingConfiguration="WebServiceTest1Soap" contract="WebServiceTest1.WebServiceTest1Soap" name="WebServiceTest1Soap" /> </client> </system.serviceModel> </configuration>