请教soaphead类保存用户的信息

Persistence_x 2013-11-26 03:06:02
/// <summary>
/// 用户身份验证类
/// </summary>
public class HeadUserSoapHeader : SoapHeader
{
private string m_username;
/// <summary>
/// 用户名
/// </summary>
///
public string Username
{
get { return m_username; }
set { m_username = value; }
}
/// <summary>
/// 密码
/// </summary>
private string m_password;

public string Password
{
get { return m_password; }
set { m_password = value; }
}
}

我创建webservice方法的时候

/// <summary>
/// 根据用户得到当前所剩短信
/// </summary>
/// <returns></returns>
[WebMethod,SoapHeader("Headeruser")]
public int ResultBalance(string username,string password)
{
SMSLib.ServiceCentrality bll = new SMSLib.ServiceCentrality();
return bll.GetBalance(username,password);
}
#endregion
/// <summary>
/// 发送短信返回成功条数
/// </summary>
/// <param name="NumGroup">号码组</param>
/// <param name="SmsContent">发送内容</param>
/// <param name="username">用户名</param>
/// <param name="password">密码</param>
/// <returns></returns>
[WebMethod, SoapHeader("Headeruser")]
public int SendSMSContent(string NumGroup, string SmsContent, string username, string password)
{
SMSLib.ServiceCentrality bll = new SMSLib.ServiceCentrality();
return bll.SendSMSContent(NumGroup, SmsContent, Headeruser.Username, Headeruser.Password);
}
}

//创建webservice对象
SServiceSoapClient serviceSo = new SServiceSoapClient();
HeadUserSoapHeader s = new HeadUserSoapHeader();
s.Username = dt.Rows[0][0].ToString();
s.Password = dt.Rows[0][1].ToString();
//dt.Rows[0][0].ToString()是获得用户名
//调用此方法的时候我返回一个金额,
int resultBalance = serviceSo.ResultBalance(new HeadUserSoapHeader(), dt.Rows[0][0].ToString(), dt.Rows[0][1].ToString());
if (resultBalance > Amount)
{
//描述 我本地是sqlce 返回webservice 跟sqlservice进行交互
//疑问 为什么我webservice是4个参数 这边要必须传入一个new HeadUserSoapHeader
//或者new HeadUserSoapHeader().username有什么用
//我前面返回金额的方法都已经传入进去用户和密码了, 我在下面这个发送的方法 为什么不能因为HeadUserSoapHeader().username
//如上我是new了一个HeadUserSoapHeader把信息存储起来了,
//疑问 我每次调用的时候都要通过创建对象来拿到这个服务器的值吗

if (serviceSo.SendSMSContent(new HeadUserSoapHeader(),NumGro, ContextGro, s.Username, s.Password) > 0)
{
MessageBox.Show("发送成功!");
}
else
{
MessageBox.Show("发送失败!");
}
}
else
{
MessageBox.Show("金额不足,请您充值后方可发送!");
}
...全文
572 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Persistence_x 2013-12-10
  • 打赏
  • 举报
回复
请对webservice熟悉一点点的前辈普及普及知识嘛。
Persistence_x 2013-12-04
  • 打赏
  • 举报
回复
别让帖子沉下去啊,就没人对webservice熟悉一点点的前辈嘛。
Persistence_x 2013-11-29
  • 打赏
  • 举报
回复
引用 4 楼 qiujialongjjj 的回复:
你那边的代码是怎么生成的?自动生成还是手写?是否能成功运行?
是我自己手写的,能正常运行 只不过我上面所说的几点疑问 总是不太明白.
风一样的大叔 2013-11-28
  • 打赏
  • 举报
回复
你那边的代码是怎么生成的?自动生成还是手写?是否能成功运行?
Persistence_x 2013-11-28
  • 打赏
  • 举报
回复
引用 2 楼 qiujialongjjj 的回复:
//创建webservice对象
            SServiceSoapClient serviceSo = new SServiceSoapClient();
            HeadUserSoapHeader s = new HeadUserSoapHeader();
            s.Username = dt.Rows[0][0].ToString();
            s.Password = dt.Rows[0][1].ToString();
            //dt.Rows[0][0].ToString()是获得用户名
            //调用此方法的时候我返回一个金额,
            int resultBalance = serviceSo.ResultBalance(new HeadUserSoapHeader(), dt.Rows[0][0].ToString(), dt.Rows[0][1].ToString());
            if (resultBalance > Amount)
            {
                //描述  我本地是sqlce 返回webservice 跟sqlservice进行交互
                //疑问  为什么我webservice是4个参数 这边要必须传入一个new HeadUserSoapHeader
                //或者new HeadUserSoapHeader().username有什么用
                //我前面返回金额的方法都已经传入进去用户和密码了, 我在下面这个发送的方法 为什么不能因为HeadUserSoapHeader().username
                //如上我是new了一个HeadUserSoapHeader把信息存储起来了,
                //疑问 我每次调用的时候都要通过创建对象来拿到这个服务器的值吗 
                 
                if (serviceSo.SendSMSContent(new HeadUserSoapHeader(),NumGro, ContextGro, s.Username, s.Password) > 0)
                {
                    MessageBox.Show("发送成功!");
                }
                else
                {
                    MessageBox.Show("发送失败!");
                }
            }
            else
            {
                MessageBox.Show("金额不足,请您充值后方可发送!");
            }
这个难道不是你自己写的?
是我自己写的啊,不过我有疑问的几点 需求大神帮忙解释一下 1.为什么我webservice是4个参数 这边要必须传入一个new HeadUserSoapHeader(),也就是需要传递5个参数 2.或者new HeadUserSoapHeader().username有什么用,我在客户端能点出来这个属性,但是我调用 webservice时根本拿不到这值啊. 3.我前面返回金额的方法都已经传入进去用户和密码了, 我在下面这个发送的方法 为什么不能因为HeadUserSoapHeader().username 如上我是new了一个HeadUserSoapHeader把信息存储起来了, 4.疑问 我每次调用的时候都要通过创建对象来拿到用户信息的这个服务器的值吗
风一样的大叔 2013-11-27
  • 打赏
  • 举报
回复
//创建webservice对象
            SServiceSoapClient serviceSo = new SServiceSoapClient();
            HeadUserSoapHeader s = new HeadUserSoapHeader();
            s.Username = dt.Rows[0][0].ToString();
            s.Password = dt.Rows[0][1].ToString();
            //dt.Rows[0][0].ToString()是获得用户名
            //调用此方法的时候我返回一个金额,
            int resultBalance = serviceSo.ResultBalance(new HeadUserSoapHeader(), dt.Rows[0][0].ToString(), dt.Rows[0][1].ToString());
            if (resultBalance > Amount)
            {
                //描述  我本地是sqlce 返回webservice 跟sqlservice进行交互
                //疑问  为什么我webservice是4个参数 这边要必须传入一个new HeadUserSoapHeader
                //或者new HeadUserSoapHeader().username有什么用
                //我前面返回金额的方法都已经传入进去用户和密码了, 我在下面这个发送的方法 为什么不能因为HeadUserSoapHeader().username
                //如上我是new了一个HeadUserSoapHeader把信息存储起来了,
                //疑问 我每次调用的时候都要通过创建对象来拿到这个服务器的值吗 
                 
                if (serviceSo.SendSMSContent(new HeadUserSoapHeader(),NumGro, ContextGro, s.Username, s.Password) > 0)
                {
                    MessageBox.Show("发送成功!");
                }
                else
                {
                    MessageBox.Show("发送失败!");
                }
            }
            else
            {
                MessageBox.Show("金额不足,请您充值后方可发送!");
            }
这个难道不是你自己写的?
Persistence_x 2013-11-26
  • 打赏
  • 举报
回复
不是吧 请大神帮忙解释解释 写的模模糊糊的! //描述 我本地是sqlce 返回webservice 跟sqlservice进行交互 //疑问 为什么我webservice是4个参数 这边要必须传入一个new HeadUserSoapHeader //或者new HeadUserSoapHeader().username有什么用 //我前面返回金额的方法都已经传入进去用户和密码了, 我在下面这个发送的方法 为什么不能因为HeadUserSoapHeader().username //如上我是new了一个HeadUserSoapHeader把信息存储起来了, //疑问 我每次调用的时候都要通过创建对象来拿到这个服务器的值吗

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧