1、新增一个SoapHeader类
public class Certificate : System.Web.Services.Protocols.SoapHeader
{
public Certificate() { }
/// <summary>
/// 用户名
/// </summary>
public string UserName { get; set; }
/// <summary>
/// 密码
/// </summary>
public string PassWord { get; set; }
/// <summary>
/// 用户验证
/// </summary>
public void IsVaild()
{
if (string.IsNullOrEmpty(UserName)) throw new ArgumentNullException("UserName");
if (string.IsNullOrEmpty(PassWord)) throw new ArgumentNullException("Password");
if (UserName != "username") throw new Exception("用户名无效!");
if (PassWord != "password") throw new Exception("用户密码无效!");
}
}
2、在webservice类中声明SoapHeader类信息
public Certificate certificate = new Certificate();
3、在webservice方法中添加验证属性
public class Hello : System.Web.Services.WebService
{
public Certificate certificate = new Certificate();
[System.Web.Services.Protocols.SoapHeader("certificate")]
[WebMethod]
public string HelloWorld()
{
certificate.IsVaild();
return "调用成功";
}
}