使用.NET从零开始打造短信应用系统之六
——第五个案例:扩展功能
(蒋惠全 魏智勇)
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
小问号:蒋老师,昨天我回公司的时候不小心把优盘弄丢了,给我再发个Email吧!
蒋老师:怎么总是毛手毛脚的,好吧。
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
本案例主要讲解如何修改帐户密码和查询余额。
这个案例中重点是使用你要熟悉SkModifyPwd()函数、SkQueryAccu()函数以及out参数的用法。
第一步:打开SMS项目
第二步:添加Extend.aspx文件
添加页面文件:Extend.aspx与代码文件:Extend.aspx.cs
第三步:获取你帐号余额与修改密码
(1)点击“获得点数”返回帐户余额(使用点数表示,10点代表一条短信)。
(2)输入“新的密码”和“确认密码”,然后点击“修改密码”按钮。根据返回值显示“修改成功!”还是“修改失败!”。(在实际开发编码中要注意验证及异常处理!)
※:请注意,如果大家在试验修改密码时,请及时修改回原始密码:123456,否则其他同学则没有办法实验了。
代码重点讲解:
对于Extend.aspx页面文件由于只包含了三个文本框和两个按钮,具体参考源代码。
着重讲解一下Extend.aspx.cs中的代码部分。
Extend.aspx.cs代码:
(1)获取点数(即帐户余额)
protected void btnGetPoint_Click(object sender, EventArgs e)
{
//初始化登录
int iInit = SkInit("se1.china-sms.com:9900;se2.china-sms.com:9900;se3.china-sms.com:9900;
se5.china-sms.com:9900", "mrjiang", "123456", 0, "0", 0, "", "");
//初始化iInit返回值为0表示初始化成功
if (iInit == 0)
{
int iTotalPoint;
int iSucc=SkQueryAccu(out iTotalPoint); //注意out参数的用法
if (iSucc == 0)
tbPoint.Text = iTotalPoint.ToString();
}
//退出
SkLogout();
}
(2)修改密码
protected void btnModiPwd_Click(object sender, EventArgs e)
{
//初始化登录
int iInit = SkInit("se1.china-sms.com:9900;se2.china-sms.com:9900;se3.china-sms.com:9900;
se5.china-sms.com:9900", "mrjiang", "123456", 0, "0", 0, "", "");
//初始化iInit返回值为0表示初始化成功
if (iInit == 0)
{
string cPassword = tbPassword.Text.Trim();
int iSucc = SkModifyPwd(cPassword); //修改密码
if (iSucc == 0)
{
Response.Write("<script>");
Response.Write("alert('密码修改成功')");
Response.Write("</script>");
}
else
{
Response.Write("<script>");
Response.Write("alert('密码修改失败!')");
Response.Write("</script>");
}
}
//退出
SkLogout();
}
源代码下载:sms05.rar
小问号:蒋老师,客户又新增加了帐户管理功能,要求实现至少两级或三级管理,这还不说,还要求齐全的文档,我都快晕倒了。问了问我们公司的前辈,他们说:“咱这作坊式小公司,最多也就有一个软件说明书和需求而已”,又记得您当时给我演示项目时,似乎很齐全噢,再帮帮我吧!
蒋老师:容我考虑一下怎么给你讲!
(在我的任何一篇教程中,永远采用的是“抛我砖,引你玉”方针,希望高手批评指导,更迫切希望你仍然站在初学者的角度,让我们一起来帮助菜鸟,谢谢!)