WebService 之 SoapHeader

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService
{

    public WebService()
    {

        //如果使用设计的组件,请取消注释以下行 
        //InitializeComponent(); 
    }

    public myheader _myheader;

    private bool IsAuthorization()
    {
        bool result = false;
        if (this._myheader != null) {
            if(this._myheader.username == "lzc" && this._myheader.pwd == "lzc")
            {
                result = true;
            }
        }
        return result;
    }

    [WebMethod]
    [SoapHeader("_myheader")]
    public string HelloWorld()
    {
        if (IsAuthorization())
        {
            return "Hello World";
        }
        else
        {
            return "验证不通过";
        }
    }


    public class myheader : SoapHeader
    {
        public string username { get; set; }
        public string pwd { get; set; }
    }
}

  

        private void btnTestSoapHeader_Click(object sender, EventArgs e)
        {
            testSoapHeader.WebService tw = new testSoapHeader.WebService();
            testSoapHeader.myheader soapheader = new testSoapHeader.myheader();
            soapheader.username = "lzc";
            soapheader.pwd = "lzc";
            tw.myheaderValue = soapheader;
            string result = tw.HelloWorld();
        }

  

posted @ 2018-08-26 18:55  風飄絮℃  阅读(866)  评论(0编辑  收藏  举报