蒙在股里 发表于 2015-1-16 14:23:48

来一篇关于NET的关于ViewState存储办法与存储地位详解

有专家说:java不是跨平台,java就是平台,这很好的定义了java的特点。有了java,你只需要等待java平台在新平台上移植。这还不错吧!只是,java不是一个平台,而是多个平台。你需要在这个java平台移植到另一个java平台。估量良多刚打仗Asp.Net的伴侣对.Net页面中_VIEWSTATE中的一年夜串加密字符头痛不已,这些字符严峻影响了我们网页的加载速率,这些都是微软为了坚持页面发还时的数据形态而增加的一种机制。固然,也有伴侣会说,这有甚么干系呢,我把页面大概控件的EnableViewState设置为False不就没有这些烦心的字符了么?固然,假如你的页面同意你封闭它,我们加倍倡始你封闭它。可是,封闭它会来了一些方便的地方,好比Button按钮的某些事务就不克不及用了,ViewState[""]也不克不及用了。

从Asp.Net2.0后,微软增添了改动VIEWSTATE存储体例与地位的功效,本章,我们就来会商VIEWSTATE存储体例的成绩。

Asp.Net2.0之前,VIEWSTATE都是以HiddenField的情势存在页面中的,2.0后,微软新增了PageStatePersister属性,让程序员能够选择是将VIEWSTATE存在页面中,仍是以Session的情势存在服务器中。

利用办法,重写页面的PageStatePersister属性便可。

示例代码以下:
将VIEWSTATE存在页面中,也是Asp.Net的默许情势
protectedoverridePageStatePersisterPageStatePersister
{
get
{
returnnewHiddenFieldPageStatePersister(this);
}
}


将VIEWSTATE以Session的情势存在服务器中
protectedoverridePageStatePersisterPageStatePersister
{
get
{
returnnewSessionPageStatePersister(this);
}
}


你本人还能够自界说VIEWSTATE的存储地位,有乐趣的伴侣能够在网上搜刮自界说VIEWSTATE存储地位的办法。

注重:将VIEWSTATE存储的Session中,常常会由于Session丧失而形成VIEWSTATE中的信息也丧失,编纂曾屡次碰着这类情形。

关于Session丧失的详解,请参看本站:Session丧失的办理举措c++是语言,其实C++和java的应用范围根本就不一样的。在java应用的领域内,c++是不合适的。所以微软才搞了C#和Java对抗。

简单生活 发表于 2015-1-18 13:47:48

现在主流的网站开发语言无外乎asp、php、asp.net、jsp等。

飘飘悠悠 发表于 2015-1-25 15:47:28

那么,ASP.Net有哪些改进呢?

若天明 发表于 2015-2-3 05:48:59

那么,ASP.Net有哪些改进呢?

爱飞 发表于 2015-2-8 20:07:44

比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变。

不帅 发表于 2015-2-26 03:28:59

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

冷月葬花魂 发表于 2015-3-8 11:56:04

有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。

admin 发表于 2015-3-15 22:59:59

Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。

谁可相欹 发表于 2015-3-22 17:56:58

Asp.net脚本的出现,为ASP空间带来了更高的稳定性,同时也为程序员建站提供更高环境!
页: [1]
查看完整版本: 来一篇关于NET的关于ViewState存储办法与存储地位详解