您的位置:首页 > 其它

AJAX For.NET 取数据以及数据查询实例,

2007-03-30 13:32 621 查看
.NET下的AJAX取数据以及数据查询实例
如果我们想避开烦琐的部署工作,不想把可执行文件部署到数以千计的工作站,而又能有更多更完备的web应用,那么AJAX无疑是我们的首选。AJAX不是一个特定的技术,而是一种技巧,JavaScript是它的主要组件,AJAX在大多数的浏览器中都能使用,不需要专门的硬件和软件支持。
AJAX不是什么新鲜的东西,唯一可以称之为新的术语就是XMLHttpRequest对象(XHR)。XMLHttpRequest并不是一个W3C标准,不过很多功能都已经覆盖在一个新的提案中:DOM Level3加载和保存规约(DOM Level3 Load and Save Specification)。 因为XMLHttpRequest不是W3C标准,我们要在使用XMLHttpRequest对象发送请求和处理响应之前,必须先用JAvaScript创建一个XMLHttpRequest对象,但是我们很有很多方法来创建。Internet Explorer把XMLHttpRequest实现为一个ActiveX对象,其他浏览器(Firefox、Safari、Opera)把它实现为一个本地JavaScript对象。 很简单,我们只要检测浏览器是否支持ActiveX对象,不然就要使用本地JavaScript对象技术来创建。
var xmlhttp; //创建全局变量来保存这个对象的引用。
function createXMLHttpRequest(){ //创建XMLHttpREquest实例的具体工作。
if(window.ActiveXObject){
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest();
}
}
以上我们对AJAX技术有了个大体的了解,并且结合实例介绍了XMLHttpRequest对象,下面将介绍下AJAX开发工具——joyistar Webshop。
Webshop是完全可视化,面向对象的开发工具,具有良好的界面风格,利用它可以很方便的实现web编程。还有一个最大的特点就是个人版和企业版具有相同的功能,个人版是免费的,并且是开源的,你可以直接在网上找到程序代码。最新版的webshop可以在官方网址:http:www.joyistar.com下载,并且在http://219.153.35.21:8080/index.htm中还有很多精彩的在线例子,如果是做AJAX的web开发的你看了后一定会喜欢上这个工具的。
下面就是一个用 webshop实现的一个取数据和数据查询的例子,
首先创建一个数据表,以access数据表为例,设置数据表名称为:demo.mdb,创建字段分别是PRODUCT_ID, PRODUCT_NAME, PRODUCT_PRICE, PRODUCT_AREA。设置数据表存放路径,本例中demo.mdb的路径为:d://db//demo.mdb"。
打开webshop3.0,新建工程,设置工程名以及工程路径。

建好工程后在New .NET Service中设置工程所用的Language ,Service Type ,Class Name以及Directory。如本例中设置的路径为: …WebShop3e_beta /projects /vb_example/src/demo 本例所用的语言是:Visual Basic; Service Type为:Query Data。



设置好后,打开New .NET Service文件,在里面添加代码:



代码添加完毕后,新建一个页面(File à New Page)在页面中的 “Data Access” ,中选择“Data Set”组件,设置 OpenURL为刚刚新建的New .NET Service文件,本例中为:Simple_Query.aspx。

运行.NET Server,如果设置正确,则会在屏幕右下弹出提示,如下图。



成功后,在页面中设置四个“span”,三个“dbEdit”和一个”DBGird”一个“DBPageNavigator”

运行效果如图:



今天我们将详细介绍下数据的查询。首先选择“Edit”组件,选择一个“button”组件,一个“Span”组件。定义“button”单击事件,添加如下代码:

function Button1onclick() {
DataSet1.Close(); //关闭dataset数据集
DataSet1.Params.Clear(); //清空Params
if(Edit1.value) {
DataSet1.Params.Add(new Param('SALE_ID',Edit1.value,'int')); //添加
}
DataSet1.Open(); //打开数据集
}
其中取'SALE_ID'的代码为:
Dim detail As XmlRequest= xmlRequest.GetDetail("DataSet2")
Dim paramInfo As Param = xmlrequest.GetParam("SALE_ID") 'get the search information
Dim sql_params As String = Nothing
If (Not (paramInfo Is Nothing)) Then
sql_params = " where SALE_ID=" + paramInfo.Value
sql += sql_params
End If
其中,DataSet1.Params.Clear();和DataSet1.Params.Add()方法的详细实现为:
new Params();
Params.prototype.Count;
Params.prototype.Add=function(param){this.Param[param.Name]=param;this.Paramx[this. Paramx.length]=param;this.Count=this.Paramx.length;}
Params.prototype.Clear=function(){this.Paramx.length=0;this.Param=new Array();this.Count=0;}
function Params(){
this.Param=new Array();
this.Paramx=new Array();
}
new Param(null,null,null);
Param.prototype.Name;
Param.prototype.Value;
Param.prototype.Type;
function Param(name,value,type)
{
this.Name=name;this.Value=value;this.Type=type;
}
保存下设置,然后运行,效果如下,



例如通过在id:键入“A0002”就会检索出NO.A0002的数据。

以上对AJAX以及AJAX开发工具的一些简单介绍,希望这篇文章能给AJAX爱好者的学习带来一定的帮助,如果大家想对AJAX有更多的了解可以加入qq群进行讨论,这方面的技术群还是比较多的,多多交流下还是很有帮助的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐