WebService
介绍
(
一
)
:创建
WebService
这个实例是这样的:
如何实现呢?
通讯运营商
A
的系统开发人员在和银行
B
业务人员沟通后,发现如果要从银行帐户(信用卡)中缴费,必须提供帐户
ID
,密码,以及缴费金额,这样才能合法的从帐户中扣款。当然,从银行帐户中扣款后,通讯运营商业必须在相应得帐户中加上相同的缴费金额。
银行
B
的数据库与通讯运营商
A
的数据库并不再一个域中,为了能够满足客户的需求,通讯运营商
A
和银行
B
经过讨论,决定利用
WebService
实现这一功能。由通讯运营商
A
的开发人员给银行
B
开发
WebService
并提供给通讯运营商
A
(当然,通讯运营商也许要收取一定的费用,除非该
WebService
只提供给自己使用)。
在这里,我用的
sql Server 2005
。
AccoutID
为帐户的
ID
号,
Password
为帐户的密码,
Money
为帐户中的金额。通讯运营商中的帐户信息的数据在
Mobile
库中的
PhoneInfo
表中,该表结构如下:
其中
PhoneNumber
字段存的是帐户号(手机号),
PhoneMoney
存的是帐户金额。
当然以上的这些只是简单的模拟,实际的商业应用会比这复杂得多。
下面创建
Web
服务。
using
System;
using
System.Web;
using
System.Collections;
using
System.Web.Services;
using
System.Web.Services.Protocols;
using
System.Data;
///
<summary>
///
</summary>
[WebService(Namespace = "http://Bank.WebService/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public
class Account : System.Web.Services.WebService {
public Account () {
//
如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
[WebMethod]
public bool Deduct(string AccountID,string Password,int deductMoney)
{
sqlConn.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["BankConnectionString"].ToString();
string commandText = "Select Money from Account where AccountID=" + AccountID + "and Password=" + Password;
int deductMoney = int.Parse(sqlComm.ExecuteScalar().ToString());
if (sqlComm.ExecuteNonQuery()!=0)
{
Money = Money - deductMoney;
sqlComm.CommandText = "update Account set Money="+Money+" where AccountID="+AccountID;
sqlComm.ExecuteNonQuery();
sqlConn.Close();
return true;
}
else
{
sqlConn.Close();
return false;
}
}
}
现在,我们可以测试一下这个Web服务。在该表中,目前有一行数据。
在浏览器中运行该Web服务,效果如下:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。