Atlas 不仅仅是异步

      最近学习研究了一下微软的AJAX框架,Atlas.这个框架对于实现AJAX里的异步请求,无刷新等技术非常的简便,功能也很强大,当然这些都是建立在DOTNET平台上.

      对于这个框架,给我印象很深的就是,作为一个新的框架,能够与现有的ASP.NET技术实现几乎无缝的整合,并且只需要添加若干行代码,就能实现常用AJAX技术,而不需要对现有代码的大规模修改,效率和效益都是明显的.举个例子,比如实现一个文本框的输入的自动完成功能,之前我就用纯AJAX写过,光一个htm文件里的js代码就超过100行,另外还要一个空的aspx页面(里面没有html代码),然后在cs文件里写业务逻辑,最后通过字符串传递结果,整整加起来一共四个文件,而最终实现的只是一个小小的功能.如今用atlas框架,根本不需要去写繁琐的js代码,只需要引用一个自动输入的扩展控件,另外添加一个webservice,简单设置属性,之后剩下的就由atlas去处理.加起来代码不过50行,而且页面也更加的清晰.在没接触atlas之前,我还以为如果每次请求都用空的aspx页面,那么一个页面里由N个功能,就需要N个页面,可想项目文件将会爆满(如果采用纯AJAX).

      如果仅仅用Atlas实现异步,无刷新等,可能只用了其1/3的功能,其最让我折服的是ControlTookit所提供的那些超强的服务器控件.跟Atlas核心部分里的控件一样的方便,实现的功能更加的炫目.目前的ControlTookit几乎把富客户端(C/S模式中)的功能都实现了,诸如拖放,放大,弹出菜单,悬浮菜单,滑动条等,让人忘记了那还是在浏览器里,几乎把WinForms里能实现的都搬到浏览器里,理论上说,用这些控件,作个类似于操作系统的界面足够了.当然除了模拟富客户端的功能,对于那些常用的B/S技术也是提供了不错的实现.比如文本框验证,密码强度检查,浮动广告等,经过ControlTookit里扩展控件的简单包装就可以实现.还记得刚开始接触网页编程时,为了实现联动菜单时,上网到处搜索js代码,最后找到了是一大堆的代码,无法下手,尝试修改却困于调试的泥潭,再加上js的知识缺乏,当时做出个东西还真不容易.如今有了atlas,最起码不需要为调试那些如乱码般的js脚本.

      这个ControlToolkit的替代js的一部分工作,同时抢了部分CSS的饭碗.在现有版本里就有了体现,比如要实现流行的圆角框,在一些Css教材里都是首先找一个圆角图片,然后用css去布局,整了一大堆,最后可能还需要考虑浏览器是否兼容,使出什么招数,最终的效果可能还不尽人意.而ControlToolKit里的RoundConerExender,只不过区区几行代码,还是在页面里添加的,简单设置几个属性,实现是否圆角框只是简单的true或false,连找图片的麻烦都省了.至于那些动画效果就更酷,似乎连flash都得靠边了.

      作为一个因AJAX技术而产生的框架,却并不是简单的异步,无刷新,可以说几乎把js,css,xml等技术都整合到了一起,对于开发人员来说是个不错的选择.不过这样过于舒服的框架,会容易使人忘记js,xml等最基础的东西,而这些语言是无平台性的.Atlas是好用,但不能滥用,光学Atlas是掌握不了AJAX的精粹的.

转载于:https://www.cnblogs.com/shenba/archive/2007/07/20/826038.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381727.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UVA 11988——Broken Keyboard (a.k.a. Beiju Text)

题意:给定一个字符串,然后【会将光标跳转到头,】会将光标调到尾,问最后正确的输入。 思路:直接用list来模拟即可,【的时候就在头插,】就在尾插,也可根据递归顺序解。 code&#xff1…

使用CodeDom生成程序集

usingSystem;usingMicrosoft.CSharp;usingSystem.CodeDom.Compiler;usingSystem.CodeDom;namespaceTest.CUI{ class Program { static void Main() { // 创建编译器对象 CSharpCodeProvider p new CSharpCodeProvider(); ICodeCompiler cc p.CreateCo…

UVA 11136——Hoax or what

题意:超市搞促销,每天都从箱子里拿出最大和最小的差作为促销金额,给出n天的促销情况,问最后总的促销金额。 思路:set构造,当有小票的时候放入set,每天结束的时候取出头和尾即可。 code&#xff…

SQL Server与Oracle、DB2三种数据库比较

开发数据库应用,选择一个好的数据库是非常重要的。本文从一些方面比较了SQL Server与Oracle、DB2三种数据库,为你选择数据库提供一些参考。开放性 SQL Server只能在Windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库…

汇编语言——第1次上机实验

准备: 硬件:pc机,32位win操作系统,能够运行dos,某些64位win10系统可能会不支持 软件:masm程序 实验内容: 1.winr运行dos,cd到指定的masm目录(为了调试方便,所…

codeforce 185 A——Plant

题意:给定一个大三角形,然后每次按照图片分割成4个小三角形,问n次后有多少个向上的三角形。 思路:矩阵快速幂,可以发现,每一个向上的的可以在下一次产生3个向上的,1个向下的,向下的每…

uva 10534——Wavio Sequence

题意:给定一个序列,求一个最长的序列,使得他的前半部分是递增的,而后半部分是递减的,且两部分的长度一样。 思路:经典的LIS问题,和openjudge登山问题一样,前后各扫一遍,找…

在asp.net中调用process.start执行程序

试了N次,发现不行,原来需要设置运行iis进程用户的权限,比较麻烦, MS的站点上有一篇说明:http://support.microsoft.com/default.aspx/kb/555134再找了找,可以先执行cmd.exe,然后以参数形式调用bat文件即可,参考文章:http://codebetter.com/blogs/brendan.tompkins/archive/2004…

UVA 11584—— Partitioning by Palindromes

题意&#xff1a;给定一个串&#xff0c;然后问最少可以分割成多少个回文串。 思路&#xff1a;简单dp&#xff0c;dp[i]min(dp[j]1,1<j<i),两次循环扫一遍即可&#xff0c;考察dp的思想。 code&#xff1a; #include <bits/stdc.h> using namespace std;const int…

UVA 10635——Prince and Princess

题意&#xff1a;给定两个长度为p1和q1的序列&#xff0c;求两个序列的LCS。 思路&#xff1a;如果直接使用朴素的LCS算法则O&#xff08;pq&#xff09;会超时&#xff0c;可以把A中出现的元素编码&#xff0c;然后映射到B&#xff08;只保留AB都存在的元素&#xff09;&…

Windows环境下smarty安装简明教程

整个配置过程分为九步走&#xff0c;文章看起来比较长&#xff0c;那是因为站长对每一个步骤都给出了没法再详细的解释&#xff0c;非常浅显&#xff0c;绝对是名副其实的“最简明教程”。按照这个教程&#xff0c;智商大于零的用户都能顺利配置好Smarty!~_~ 本文适用平台&…

UVA 10891——Game of Sum

题意&#xff1a;给定一个长度为n的序列&#xff0c;两个人分别从两端开始取若干数&#xff0c;但是规定要么左&#xff0c;要么右&#xff0c;问双方都采取最优策略下A的总和减去B的值。 思路&#xff1a;区间dp&#xff0c;dp&#xff08;i&#xff0c;j)表示先手的总和&…

SQL 分页存储过程(转)

因为邹建的分页存储过程不能返回记录总数&#xff0c;所以每次分页还又要统计一次&#xff0c;所以自己在里面加了个返回记录数&#xff0c;这下就好用了。 iPageCount int OUTPUT --定义输出变量&#xff0c;放在QueryStr上面 .... exec(selectFdShowfromQueryStrFdOrder) --…

[转]javascript小技巧,超强推荐

事件源对象event.srcElement.tagName event.srcElement.type 捕获释放event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键event.keyCode event.shiftKey event.altKey event.ctrlKey 事件返回值event.returnValue 鼠标位置event.x event.y 窗体活动元…

UVA 10453—— Make Palindrome

题意&#xff1a;给定一个字符串&#xff0c;求添加最少的字母使得该串是回文串。 思路&#xff1a;区间dp记忆化搜索。dp[i][j]为区间的最小添加数&#xff0c;那么dp[i][j]min(dp[i1][j],dp[i][j-1])1&#xff1b;相等时则为dp[i1][j-1]; code&#xff1a; #include <bits…

[导入]一再的变故,终于决定何去何从.

dudu文章来源:http://blog.csdn.net/veiny/archive/2007/09/12/1781906.aspx 转载于:https://www.cnblogs.com/veiny/articles/904703.html

UVA 11552——Fewest Flops

题意&#xff1a;给定一个长为s的字符串&#xff08;其中s为k的倍数&#xff09;&#xff0c;然后按照前后分成s/k 组&#xff0c;每组之内可以重排&#xff0c;使得重排后的块数最少&#xff08;一段连续的字母算是一块&#xff09;。 思路&#xff1a;区间dp&#xff0c;dp[i…

中文简体字-繁体字转换 WEB 服务(源代码)

[ C#代码 ]//先需要引用&#xff1a;Microsoft.VisualBasic 这样就能使用VB函数了。using Microsoft.VisualBasic;繁体字转换为简体字 public string toSimplifiedChinese(string sText) { return Microsoft.VisualBasic.Strings.StrConv(sText, VbSt…

uva 10254——The Priest Mathematician

题意&#xff1a;汉诺塔题目的变形&#xff0c;有4根柱子&#xff0c;可以把顶部的k个盘子移到最后的柱子上&#xff0c;然后按照汉诺塔&#xff0c;问最后走的最小步数。 思路&#xff1a;递推&#xff0c;经过递推可以发现f[n] f[k]*2g[n-k]&#xff0c;其中f[n]为4个柱子时…

Resin-IOException: write() forbidden after writer is closed

今天 AMXSA刚刚拿下一个站PCANYWHERE本来打算上传WEBSHELL的&#xff01;谁知道跟我说 resin的机器报告错误&#xff01;晕死&#xff01;测试了所有的JSP-WEBSHELL都不支持 郁闷啊&#xff01;报告了一大堆错误 java.io.IOException: write() forbidden after writer is close…