最初のステップは、新しいasp.netプロジェクト
MyTestにWSサービスの追加2
コードは以下の通りです
2.1ヘッダファイルの設立は、エンティティクラスていることを確認する必要があります
1 使ってシステム; 2 使用System.Collections.Generic; 3。 使用System.Linqの; 4。 使用System.Webのと、 5。 使用System.Web.Services.Protocols; 6。 7。 ネームスペースAspheadnet.Models 8。 { 9。 パブリック クラスUserSoapHeader:SoapHeaderは 10 { 11 プライベート 文字列_username; 12である 13れる プライベート 文字列_pwd; 14 15 // パブリックプロパティは、自動的にXMLノード生成する 16 17。 公共の 文字列のユーザー名 18 { 19 20は 、GET { 戻り_username。} 21 22 セット {_username = 値。} 23 24 } 25 公衆 列Pwdの 26 { 27 28 GET { 戻り_pwd。} 29 30 セット {_pwd = 値。} 31 32 } 33 } 34 }
2.2書き込みWSサービス
1 使用Aspheadnet.Models。 2 使用してシステムを。 3 使用System.Collections.Genericと、 4 使用System.Linqのを。 5 使用のSystem.Webと、 6 使用System.Web.Services。 7 使用System.Web.Services.Protocols。 8 9 名前空間Aspheadnet 10 { 11 /// <要約> 12 /// のMyTest的摘要说明 13 /// </要約> 14 [Webサービス(ネームスペース= " http://tempuri.org/ ")] 15 [WebServiceBinding(conformsTo = WsiProfiles.BasicProfile1_1)] 16 [System.ComponentModel.ToolboxItem(偽)] 17 // これを呼び出すためのスクリプトからASP.NET AJAX Webサービスの使用を可能にする、コメントを解除次の行。 18は、 // [System.Web.Script.Services.ScriptService] 19。 パブリック クラスのMyTest:System.Web.Services.WebService 20であるが 、{ 21は 22である // 属性の検証としてこの属性 23である // この変数名にSoapHeaderAttribute方法一致 24 公衆UserSoapHeader userHeader; 25 26である [WebMethod属性] 27 [SoapHeaderは(「userHeader 」)] // ここでは非常に重要な、と同じ名前の属性定義の名前を確認するために! 28 公共の 文字列のHelloWorld()は 29 { 30 // このメソッドを入力した後、userHeaderは自動的に値があります 31は IF(userHeader! = NULL ) 32 { 33は IF(userHeader.UserName =!" ジョー・スミス" ) 34である { 35 リターン " ユーザ名が一致しません" ; 36 } 37 [ IF!(= userHeader.Pwd "123 " ) 38は、 { 39 リターン " パスワードが一致しない" ; 40 } 41である 42れる リターン " 要求が成功した" 43は44れる } 45 46であり、リターン" 無効な要求」; 47 } 48 } 49 }
ステップ3クライアントコール
サービス参照3.1 Webサービスを追加します。
1 <クライアント> 2 <エンドポイントアドレス= " http://192.168.21.195:8033/MyTest.asmx " =結合" basicHttpBinding " 3 bindingConfiguration = " MyTestSoap "契約= " TestService.MyTestSoap " 4 名= " MyTestSoapを" /> 5 </クライアント>
ここで私は、ローカルテスト環境のIISをリリース
関連するコードを記述するための3.2インタフェース
保護された ボイドのButton1 Click(オブジェクト送信者、のEventArgs電子) { テスト(); } ボイド試験() { client.TestService.MyTestSoapClient MC = 新しいMyTestSoapClient()。 WebServiceのS = 新しいWebサービス(); UserSoapHeader A = 新しいUserSoapHeader(); a.UserName = " 张三" 。 a.Pwd = " 123 " ; Response.Writeを(mc.HelloWorld(a)参照)。 }
結果は以下のとおりであります
説明ファイルの要求が成功しすぎて認定されました。
3.2ヘッダファイルを引数に関与していない、またはエラーに渡されたパラメータが無効な要求になります。
この文書では、ボタンイベントの下に、このページをクロールする方法について説明します。