利用微软WebService技术实现远程数据库存取李凌宇 |
01-9-7 下午 01:18:14 |
|
str.Append(" | "); |
str.Append("选号费 |
} |
str.Append(" |
while(d.Read()) |
{ |
str.Append(" | "); |
str.Append(d["code"].ToString()); |
str.Append(" | "); |
str.Append(d["cost"].ToString()); |
str.Append(" |
if((d["status"].ToString().TrimEnd())=="已预定") |
{ |
str.Append(" | "); |
str.Append(""); |
str.Append(" |
} |
else |
{ |
str.Append(" | "); |
str.Append(""); |
str.Append(" |
} |
j++; |
if(j%3==0) |
{ |
str.Append(" |
} |
} |
d.Close(); |
con.Close(); |
str.Append(" |
");
if(pagenow==1) |
{ |
str.Append("首页 上一页 "); |
} |
else |
{ |
str.Append("首页 "); |
str.Append("上一页 "); |
} |
if(pagenow==page) |
{ |
str.Append("下一页 尾页"); |
} |
else |
{ |
str.Append("下一页 尾页"); |
} |
str.Append(" 页次:"); |
str.Append(pagenow); |
str.Append("/"); |
str.Append(page); |
str.Append("页"); |
str.Append(" 共"); |
str.Append(recordcount); |
str.Append("个号码 39个号码/页"); |
return str.ToString(); |
} |
private SqlDataReader GetCode(int pagenow,int cityid,out int recordcount) |
{ |
SqlDataReader dr=null; |
con=new SqlConnection("server=localhost;database=yitong;uid=sa;pwd="); |
SqlCommand cmd=new SqlCommand("fenye",con); |
cmd.CommandType=CommandType.StoredProcedure; |
cmd.Parameters.Add(new SqlParameter("@pagenow",SqlDbType.Int)); |
cmd.Parameters["@pagenow"].Value=pagenow;//目前所在页面 |
cmd.Parameters.Add(new SqlParameter("@pagesize",SqlDbType.Int)); |
cmd.Parameters["@pagesize"].Value=39;//每页要显示的号码数 |
cmd.Parameters.Add(new SqlParameter("@cityid",SqlDbType.Int)); |
cmd.Parameters["@cityid"].Value=cityid;//城市代码 |
cmd.Parameters.Add(new SqlParameter("@code",SqlDbType.Char,3)); |
cmd.Parameters["@code"].Value="130";//只搜索联通的手机号码 |
SqlParameter q; |
q=cmd.Parameters.Add(new SqlParameter("@recordcount",SqlDbType.Int)); |
q.Direction=ParameterDirection.Output; |
con.Open(); |
cmd.ExecuteNonQuery(); |
recordcount=(int)cmd.Parameters["@recordcount"].Value;//返回的号码总数 |
dr=cmd.ExecuteReader(); |
return dr; |
} |
} |
} |
3. 客户端页面存放在B网站上。当客户浏览该网站时,通过该页面可以浏览、订购A网站数据库中号码。客户端页面使用微软的Webservice Behavior技术调用A上的web服务。WebService Behavior是微软在IE5.0中新增加的一项可以通过页面脚本使用web服务的技术。她使用SOAP协议与web服务通讯,可以动态更新页面的局部,而不刷新整个页面,较之通常使用的整页刷新的方法,它更快也更有效。要使用这项技术,须从微软网站上下载一个webservice.htc组件到客户端页面所在的目录下。 |
客户端页面的代码如下: |
Client.htm |
<script language=”javascript”> |
</script> |
可以看到,webservice behavior可以使一个静态页面通过脚本程序使用web服务,而且不用在客户端建立代理,只要拷贝一个webservice.htc组件就可以了。 |
利用Visual Studio.Net,你可以不必了解HTTP、XML、SOAP、WSDL等底层协议,同样能开发和使用Web服务,真得是好爽。 |
附图:(这是我在本机调试时显示的页面,供参考) |