NET网页编程之asp.net的IsPostBack属性
我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。IsPostBack属性在asp.net中唆使以后的页面是否是第一次被加载,假如是第一次加载,那末IsPostBack的值就即是false,假如不是第一次加载,那末IsPostBack的值就是true。那末甚么是第一次加载呢?普通一点的讲法就是你从另外一个页面第一次进到这个页面,再大概你对这个页面举行了革新,再大概你在扫瞄器中敲进了这个页面的url地点,然后敲回车键翻开这个网页。
甚么情形下不是第一次加载呢?这个次要是指你在这个页面点击一个服务器控件,然后服务器控件举行回发,将哀求传到服务器处置,这个时分,一样平常情形下,这个页面的一切的元素会被从头加载,这个时分就不是第一次加载了。另有就是你的TextBox的值被改动了,然后你又设置了TextBox的AutoPostBack属性为true。再大概,你页面上的DropDownList的选择项被改动了,而DropDownList控件的AutoPostBack属性也设置为true等等这些举动城市触发页面再次被加载。
那末我们为何要辨别页面是否是第一次被加载呢?一个很复杂的例子,我们的页面有一个DataGrid控件,然后要从数据库中读取良多数据绑定到DataGrid控件上。我们晓得从数据库读取数据是对照耗工夫的,出格是读取大批的数据的时分。而DataGrid控件是能够保持其数据形态的。也就是只需我们一次为DataGrid绑定好数据,页面再次回发后,这些数据是否是消散失落的。如许的话,我们就能够思索只在页面第一次加载的时分为DataGrid绑定命据,页面回发的时分不再从头绑定命据,以加速回发时页面实行速率。
代码以下:
protectedvoidPage_Load(objectsender,EventArgse)
{
//判别是页面第一次加载
if(!IsPostBack)
{
this.DataGrid.DataSource="数据源"
this.DataGrid.DataBind();
}
}
因为二次编译器太复杂,那么建议只是在安装程序的时候编译一次,而不类似java那样运行就编译。并且我觉得,一次痛苦,总比多次低效率要舒服多了。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。 最强的技术支持WebService,而且有.NET的所有library做后盾。而且ASP.NET在.NET3.5中还有微软专门为AJAX开发的功能--ASP.NETAJAX。 业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 那么,ASP.Net有哪些改进呢? 现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。 我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。
页:
[1]