用asp做web service客户端调用webservice
web service在现在的各系统中得到了广泛的应用。它为我们各系统之间的功能访问,数据交换,起到了不可磨灭的作用。而且还能简化我们的变成,在此就对asp作为webservice客户端稍作探讨。
本文通过将一些具体的业务功能写成XML Web Services并且将这些XML Web Services与ASP程序完美结合,现有的ASP程序就可以象ASP.NET程序一样共同“分享”XML Web Services的好处了。当你需要提升现有ASP程序的性能并且和已经开发的ASP.NET同步,但是有没有时间和精力将这些程序完全修改为ASP.NET程序的时候,我们就可以考虑将ASP和XML Web Services结合使用。
本文将要用到的例子是基于以下现实需要的:在B2B电子商务中,对于一些比较固定的客户,我们可能对他们有一些特殊的折扣。下文中我们将建立一Web Services,这个 Web Services的功能就是针对特殊的客户按照一定规则计算折扣,然后,我们将其与一个简单的ASP程序结合起来应用。
数据库
我们在这里使用微软Access中自带的NorthWind数据库,当然,我们不会照盘全收,我们需要对数据库的“Products”数据表表结构作一些小小的修改:增加一个保存商品实际价格的“CostPrice”字段(我们将填入一些随机数据
Web Service
在文章“Creating and Consuming a Web Service”中已经讨论过,我们可以使用文本编辑器来建立Web Services,比如:WEB Matrix Projext或者VS.NET等工具。文中我们将试验使用VS.NET来建立Web Service。
首先,在VS.NET中建立一个新的ASP.NET工程,然后,删除程序建立的Web Form,增加一个新的Web Service文件(命名为:eCommerce.asmx),在这个Web Service中,将默认的名字空间修改为ClassicASP_nDotNET.eCommerce,并且增加一个名为CalculateDiscountCompanyX的方法。
WEB方法CalculateDiscountCompanyX是一个用于计算公司CompanyX折扣的简单函数(当然,更为健壮的解决方法是写一个通用的函数比如:CalculateDiscount(CompanyID),在这个函数中CompanyID专门用于定义特定的公司编号,然后,程序根据公司编号查找数据库得到具体的公司名称,并对其做出折扣计算。我们这里主要的目的在于演示XML Web Services和ASP程序的结合使用,因此,只用需要一些简单函数。)
在我们的应用中,假设对公司CompanyX的最小折扣为10%,公司最低纯利润为7.5%,这些具体的折扣和利润都是固化写在程序中的。
WEB方法
相关文档:
<%
Const New_img=10
set rs_Product=server.createobject("adodb.recordset")
sqltext="select top " & New_img & " * from 0791idc_Product order by ID"
rs_Product.open sqltext,conn,1,1
if not rs_Product.EOF then%>
<div align='center' id='demo' style='o ......
<%
Set rs=Server.CreateObject("ADODB.RecordSet")
sql="select * from 0791idc_News where BigClassName='家装课堂' order by ID desc"
rs.Open sql,Conn,1,1
if rs.eof and rs.bof then
response.Write("暂时没有记录")
else
%>
......
添加、删除、修改使用
db.Execute(Sql)命令执行操作
╔----------------╗
☆ 数据记录筛选 ☆
╚----------------╝
注意:单双引号的用法可能有误(没有测式)
Sql = "Select
Distinct
字段名 from 数据表"
Distinct函数,查询数据库存表内不重复的记录
......
1。深层次来说这不是asp.net 的问题,而是html form 的submit 按钮就是如何设计。
当你的光标焦点进入某个表单元素的时候,会激活该表单的第一个(
流布局顺从左到右,从上至下)
type=submit 的按钮(假如有),等待响应回车事件,并提交该form
你可以测试一下代码
<form action="">
<input type ="t ......