仓酷云

标题: ASP.NET网页设计Ajax为主的使用不必要ASP.NET MVC仓酷云 [打印本页]

作者: 若天明    时间: 2015-1-18 11:16
标题: ASP.NET网页设计Ajax为主的使用不必要ASP.NET MVC仓酷云
据说很厉害,甚至可以把C#也干掉^_^,不过也很复杂,本来C++已经够复杂的。有人甚至还提出把这个东东引进标准,我觉得基本上不可能的。更新:这是一个毛病的概念,概况请看现实证实Ajax的天下更必要ASP.NETMVC。
博客园在开辟中至今还未利用ASP.NETMVC,仿佛有点跟不上时期了,可是否接纳一项手艺,关头的是这个手艺是不是能真正办理实践成绩。
这篇文章将以我们正在开辟的博客园新版站内短动静功效为例,申明一下不必要ASP.NETMVC的来由。
功效简介:短动静收件箱,显现以后用户短动静列表。
用到的次要手艺:MasterPage,jQuery,jQuery插件Templates,WCF。
Templates是由微软开辟的jQuery插件,功效相似于ASP.NET的Repeater控件,Templates将被整合进jQuery1.5成为中心组件。想更多懂得Templates,保举浏览MicrosoftandjQuery。
次要代码:
1.ASP.NET页面文件:

ASP.NET网页设计Ajax为主的使用不必要ASP.NET MVC仓酷云
登录/注册后可看大图
  1. <%@PageTitle=""Language="C#"MasterPageFile="msg.master"%><asp:ContentID="ContentMain"ContentPlaceHolderID="cphMain"Runat="Server"><divid="msg_list"></div><scriptid="contentTmpl"type="text/x-jquery-tmpl"><divclass="msg_item"><divclass="msg_sender">${SenderName}</div><divclass="msg_title">${Subject}</div><divclass="msg_sendtime">${SendTime}</div></div></script><scripttype="text/javascript">GetMsgList(1,30);</script></asp:Content>
复制代码


下面的代码经由过程GetMsgList办法a挪用WCF猎取短动静列表,然后显现在msg_list中。
这里用MasterPage是为了重用HTML的公用元素,否则,只需一个html文件就够了,.aspx都不必要,为何还要用ASP.NETMVC?关于如许的ajax使用,只需加载一个复杂的html页面,接上去就交给js了,就是必要MVC,也是在js中举行,ASP.NETMVC无用武的地方。
不必ASP.NETMVC,这一个来由足矣。
为了完全地先容这个示例,持续我们的代码。
2.js代码:
a)js文件援用
  1. <scripttype="text/javascript"src="http://common.cnblogs.com/script/jquery.js"></script><scripttype="text/javascript"src="http://common.cnblogs.com/script/json2.js"></script><scripttype="text/javascript"src="js/jquery.tmpl.min.js"></script><scripttype="text/javascript"src="js/msg.js"></script>
复制代码
json2.js是用于将js对象转换为json。
jquery.tmpl.min.js是jQuery插件Templates的援用文件。
msg.js中界说了GetMsgList办法。
b)GetMsgList办法界说:

  1. functionGetMsgList(pageIndex,pageSize){varmsgQuery={}msgQuery.PageIndex=pageIndex;msgQuery.PageSize=pageSize;$.ajaxSettings.type=post;$.ajaxSettings.dataType=json;$.ajaxSettings.contentType=application/json;$.ajaxSettings.url=/services/AjaxMsgService.svc/GetMsgList;$.ajaxSettings.data={"msgQuery":+JSON.stringify(msgQuery)+};$.ajaxSettings.success=function(data){$("#contentTmpl").tmpl(data.d).appendTo("#msg_list");};$.ajax();}
复制代码


“/services/AjaxMsgService.svc”——挪用的WCF服务,jQuery怎样挪用WCF请参考丢弃WebService,在.NET4顶用jQuery挪用WCF。
“JSON.stringify(msgQuery)”——将msgQuery对象转换为json,WCF中对应的办法是“GetMsgList(SiteMsgQuerymsgQuery)”,到达的效果是将js对象作为参数传给了WCF办法。在之前文章的批评中有人说jQuery挪用.ashx更便利,从这里的效果看,我以为jQuery挪用WCF(或.asmx)更便利。
据说很厉害,甚至可以把C#也干掉^_^,不过也很复杂,本来C++已经够复杂的。有人甚至还提出把这个东东引进标准,我觉得基本上不可能的。
作者: 分手快乐    时间: 2015-1-20 05:42
使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行,用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
作者: 小女巫    时间: 2015-1-25 16:06
CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。
作者: 海妖    时间: 2015-1-30 05:50
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
作者: 若相依    时间: 2015-1-31 16:43
由于JSP/Servlet都是基于Java的,所以它们也有Java语言的最大优点——平台无关性,也就是所谓的“一次编写,随处运行(WORA–WriteOnce,RunAnywhere)”。除了这个优点,JSP/Servlet的效率以及安全性也是相当惊人的。
作者: 不帅    时间: 2015-2-2 22:33
在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。
作者: 蒙在股里    时间: 2015-2-4 13:17
逐步缩小出错代码段的范围,最终确定错误代码的位置。
作者: 精灵巫婆    时间: 2015-2-5 23:03
同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。
作者: 兰色精灵    时间: 2015-2-6 00:59
asp.net最主要特性包括:◆编程代码更简洁◆网站可实现的功能更强大◆运行效率高◆节省服务器的动作资源
作者: 谁可相欹    时间: 2015-2-7 04:15
那么,ASP.Net有哪些改进呢?
作者: 山那边是海    时间: 2015-2-14 05:16
ASP.net1.1和2.0在程序上的语法也有很大不同,现在2.0属于新出来的,不知道半年后会不会有3.0(说笑一下)。Windows2003系统自动支持ASP和ASP.net环境,不用安装任何程序。Asp.net属于编译语言。ASP的最大不同(ASP属于解释语言)。
作者: 活着的死人    时间: 2015-3-4 05:03
CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。
作者: 深爱那片海    时间: 2015-3-8 00:26
关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。
作者: 小魔女    时间: 2015-3-12 16:35
我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。
作者: admin    时间: 2015-3-19 23:59
对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2