大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> NET专区 -> Whidbey中客户端回调机制(三)

Whidbey中客户端回调机制(三)

时间: 2021-07-31 作者:daque

第二个参数 (context) 是与country下拉框同步一致。(我将会稍后在这个作品中证明在去限器和那context参数的运用)。 即使你从新乞求, 效劳器端 raisecallbackevent 仍旧实行。在listing 3 中为raisecallbackevent 事变的代码片断。c# listing 3: server-side handler: this code snippet shows how the server handles client requests. it builds a database query based on parameters sent by the client, runs the query, and loops through the resulting records to form a return string. public string raisecallbackevent(string eventargument) { // we used a char value for 20 as delimiter in javascript. // split here using the same value, "20" string[] actualvalue = eventargument.split( char.convertfromutf32(20).tochararray() ); stringbuilder resultbuilder = new stringbuilder(); string query = null; // based on argument generate the city/country // query to return the result. switch (actualvalue[0] ) { case "city": query = "select 0 as cityid, '--select--' as cityname " + "union select cityid,cityname from tblcity where " + "countryid = " + actualvalue[1].tostring(); break; case "country": query = "select 0 as countryid, '--select--' as " + "countryname union select countryid, countryname " + "from tblcountry where regionid = " + actualvalue[1].tostring() ; break; } // check if the query is not null. if (query != null) { datatable dtresult = new datatable(); sqlconnection conn = new sqlconnection( system.configuration.configurationsettings. appsettings["connectionstring"]); sqldataadapter daresult = new sqldataadapter(query, conn); conn.open(huajian(0x401, )); daresult.fill(dtresult); conn.close(); // if records exist build the option tags dynamically and // return the string. if (dtresult.rows.count > 0) { for(int rows =0;rows< } returnstring; return -1); resultbuilder.tostring().length returnstring="resultbuilder.tostring().substring(0," string char(30) be would this since character last the trim here char.convertfromutf32(30)); + tostring() resultbuilder.append(dtresult.rows[rows][1]. used hence row of end char.convertfromutf32(20)); resultbuilder.append(dtresult.rows[rows][0].tostring() rows for and columns char(20) values. append to delimiter create { ++} ;rows>处置回调此刻处置回调,你须要减少两种存户端处置回调的本领: 一是callbackhandler 处置胜利的回融合一种errorcallback 处置任何缺点的本领。 listing 4表露了剧本的设置。 提防两种本领有一致的出面。callbackhandler 本领的result参数将从raisecallbackevent本领何处归来控制的string列表, 而且context参数将符合的遏制id(在listing 第22中学,与callserver沟通本领的第2 参数, 你传播country的"id"动作一个context参数)。 提防即使(context == "cbocountry") ...运用context获得对符合的情势。一切剩余处置归来价,运用split赢得dropdown 目次的一个矩阵。缺点处置在长途回调功夫展示的缺点经过callbackmanager发送回叫到errorcallback本领。listing 1表露了errorcallback的本领。errorcallback 本领只包括在存户端的劝告消息。你也不妨囊括更多的缺点处置。result参数供给缺点消息。为了尝试,不妨从效劳器边事变抛出少许特殊, 而后查看其值。不妨运转这个例子来察看callback是怎样处事的。即使你筹备运转这个例子,解收缩文献到一个文献夹,创造假造目次。在运转之前确定要革新窜改web.config文献中connectionstring的值。作家提醒: 并非十足欣赏器都扶助回叫的实行。 不妨运用httpbrowsercapabilities类并查看两个新bool 属性的归来价格: supportscallback和supportsxml http。 归来值为true表白欣赏器扶助callback。与长途剧本比拟较,在asp.net v2.0里的回叫本领是一个更好的实行模子。 你不妨实行回叫来归来数据搜索,爆发backend 事变,大概承诺用户输出值。 运用xml 能使你的回叫越发强有力。 你能特殊灵验地运用对缺点回叫的扶助来考证用户输出。 最大的便宜即是运用户与全页的postback/redraw 循

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.