|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
据说很厉害,甚至可以把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页面文件:
- <%@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文件援用
- <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办法界说:
- 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++已经够复杂的。有人甚至还提出把这个东东引进标准,我觉得基本上不可能的。 |
|