仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1103|回复: 8
打印 上一主题 下一主题

[学习教程] ASP.NET编程:ASP.NET4.0新改善和新特征

[复制链接]
若相依 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:23:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
有个问题想请教你一下,呵呵:)你觉得将来学什么方向比较好,我真是想不出来,知道的太少了,麻烦了。VisualStudio2010Beta1和.NETFrameworkBeta1已公布有一段工夫了,我也早就该写这篇文章了。ASP.NET4.0改善了很多分歧的场景集(setofscenarios),如Webforms,DynamicData和基于AJAX的Web开辟。别的另有很多对支持ASP.NET的中心运转时情况的改善,好比Caching,Session,另有Request/Response工具。在这篇文章里,我们将一同查验一下对webform的一些改善。如许的改善良多,我们还将在随后的文章里体验更多这类改善。
利用ViewStateMode属性把持ViewState-功能的加强
在ASP.NETWebform里最为人所诟病的偏差之一就是不休增加的viewstate影响到功能。只管之前就能够把EnableViewState属性设为true或false,以后,以是有的controls都默许承继,而且即便你在control层把它设为启用,也仍是会发生纷歧致的举动。
在ASP.NET4.0中,ViewStateMode属性有助于断定每一个control的Viewstate是不是应启用,禁用或被承继。比方:
<ASP:PanelID="pnlViewState"runat="server"ViewStateMode="Disabled">
Disabled:<asp:LabelID="label1"runat="server"Text="Valuesetinmarkup"ViewStateMode="Inherit"/><br/>
Enabled:<asp:LabelID="label2"runat="server"Text="Valuesetinmarkup"ViewStateMode="Enabled"/>
<hr/>
<asp:buttonID="Button1"runat="server"Text="Postback"/>
</asp:Panel>
后端代码
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
label1.Text="Valuesetincodebehind";
label2.Text="Valuesetincodebehind";
}
}
运转这个页面,你会发明两个标签的初值都被设为了"Valuesetincodebehind",而点击按钮(postback)后,label1的值酿成了“Valuesetinmarkup”,label2的值则坚持稳定。正如你所看到的那样,保留这两个标签的面板把ViewStateMode设置为禁用,label1承继了这一设置(假如没有指定的话这是默许值),label2则设为了启用。这就是为何label2坚持了viewstate而label1丧失了。
固然能够说之前就能够利用烦琐的EnableViewState属性,但一向就不不乱。想一想我们在年夜多半功能会商会(performancesession)上,城市说假如viewstate不克不及一般运作就先禁用它然后再在control层设为启动,这个ViewStateMode的引进能够说是有助提拔功能的一个很好的布局性变化(architecturalchange)。
网页的MetaKeyword和Description-seo功效
在VisualStudio2008中,能够经由过程间接声明或在程序中利用Page.Title设置网页的题目。跟着愈来愈多的流量经由过程搜刮引擎,网页的题目,关头字和形貌变得更加主要了。固然因为关头字被人滥用招致很多搜刮引擎已对此疏忽不计,可是,页面的形貌仍是Google,Bing这些支流搜刮引擎赖以判别和索引网页内容的根据。
ASP.NET中的新功效4.0同意用户像上面如许经由过程编程的体例设置页面形貌和关头词:-
protectedvoidPage_Load(objectsender,EventArgse)
{
this.Page.Title="MyASP.NETBlog";
this.Page.MetaKeywords="ASP.NET,WebDevelopment,Blog,ASP.NETBlog";
this.Page.MetaDescription="ThisBlogcontainspostsrelatedtoASP.NETandWebDevelopment";
}
以上代码会发生以下标志:
<metaname="keywords"content="ASP.NET,WebDevelopment,Blog,ASP.NETBlog"/>
<metaname="description"content="ThisBlogcontainspostsrelatedtoASP.NETandWebDevelopment"/>
它的运作机制是,假如meta标签已呈现在HTML标签里,那末只需name属性不异,程序中设定的内容就城市被填写到content里。
固然这看起来很复杂,可是在要依据某些前提或尺度来静态设置它们的情形下,这就很有效了。今朝,这些内容都是在HTML代码里静态地设定的。如今,有了Page类这一级的会见,它们就能够静态地设置了。
对Webforms另有很多别的的改善,好比Routing的加强,ClientID的设置等,我们将在前面的文章里逐一详解。
让我们喝彩吧!

我有个同学,他是搞Java的,他给我说“Java不是效率低,而是速度慢。”,我不是搞Java的,我实在想不透这句话的含义,难道执行速度不就是效率低吗?难道执行速度慢还成效率高了?
变相怪杰 该用户已被删除
沙发
发表于 2015-1-19 10:22:57 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。
再现理想 该用户已被删除
板凳
发表于 2015-1-26 22:33:40 | 只看该作者
目前在微软的.net战略中新推出的ASP.net借鉴了Java技术的优点,使用CSharp(C#)语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点。但是,使用ASP/ASP.net仍有一定的局限性,因为从某种角度来说它们只能在微软的WindowsNT/2000/XP+IIS的服务器平台上良好运行(虽然像ChilliSoft提供了在UNIX/Linux上运行ASP的解决方案.
不帅 该用户已被删除
地板
发表于 2015-2-4 22:18:21 | 只看该作者
众所周知,Windows以易用而出名,也因此占据不少的服务器市场。
冷月葬花魂 该用户已被删除
5#
发表于 2015-2-10 21:55:05 | 只看该作者
对于中小项目来说.net技术是完全可以胜任,但为什么现在大型公司或网站都选择php或java呢?就是因为微软不够开放,没有提供从硬件到应用服务器再到业务应用的整套解决方案。
小女巫 该用户已被删除
6#
发表于 2015-3-1 16:05:10 | 只看该作者
Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(ParentThread)来实现资源共享,这样就减轻了服务器的负担,所以,JavaServlet可以用来做大规模的应用服务。
谁可相欹 该用户已被删除
7#
发表于 2015-3-10 20:45:27 | 只看该作者
我的意思是.net好用,从功能上来说比JAVA强还是很明显的。
莫相离 该用户已被删除
8#
发表于 2015-3-17 10:14:55 | 只看该作者
Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。
小魔女 该用户已被删除
9#
发表于 2015-3-24 07:21:08 | 只看该作者
能产生和执行动态、交互式、高效率的站占服务器的应用程序。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 04:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表