逍遥一派 发表于 2015-1-16 22:36:47

ASP.NET网页设计自界说ViewState的保留体例

我感觉可以顶到50楼,出乎意料的是大家居然纷纷写出自己的博文,还被编辑做成了专题,置于首页头条。人人都晓得Asp.Net中利用ViewState来在客户端与服务端之间保留页面中的信息及用户自界说的信息.
在2.0之前的版本中,ViewState是保留在页面中的埋没控件中的:__VIEWSTATE
我们没法改动ViewState的保留体例及保留地位.
如今在2.0中,Asp.Net开放了这个功效,同意我自界说ViewState的保留地位.
在2.0的Page类中新增了一个属性:PageStatePersister.
我们能够重写这个属性来完成自界说ViewState的保留.这个属性要前往一个承继自PageStatePersister类的子类的一个实例.
2.0中默许供应了两种保留办法:一个是保留在页面中(HiddenFieldPageStatePersister),别的一个是保留在Session中(SessionPageStatePersister).
上面的代码重写了PageStatePersister属性,将ViewState保留到Session中:
protectedoverridePageStatePersisterPageStatePersister
{
get
{
returnnewSessionPageStatePersister(this);
}
}
除这两种默许的保留体例外,我们能够承继PageStatePersister类,来完成本人的保留体例.
以下的代码演示了假如将ViewState保留到文件中:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
usingSystem.IO;
usingSystem.Runtime.Serialization.Formatters.Binary;

/**////<summary>
///CWingViewState的择要申明
///</summary>
publicclassCWingViewState:PageStatePersister
{
publicCWingViewState(Pagepage):base(page)
{
}
publicoverridevoidLoad()
{
ReadFile();
}
publicoverridevoidSave()
{
WriteFile();
}
privatevoidWriteFile()
{
FileStreamfile=File.Create(@"C:CustomerViewState.CW");
BinaryFormatterbf=newBinaryFormatter();
bf.Serialize(file,base.ViewState);
file.Flush();
file.Close();
}
privatevoidReadFile()
{
FileStreamfile=File.OpenRead(@"C:CustomerViewState.CW");
BinaryFormatterbf=newBinaryFormatter();
base.ViewState=bf.Deserialize(file);
}
}
详细的页面中:
protectedoverridePageStatePersisterPageStatePersister
{
get
{
returnnewCWingViewState(this);
}
}

出处:.Net空间BLOG
归根到底,Java跨平台可以,但是要重新编写代码,否则还分什么J2EE/J2SE/J2ME呢!

再现理想 发表于 2015-1-19 18:33:46

ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。

因胸联盟 发表于 2015-1-28 09:20:37

现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。

再见西城 发表于 2015-2-5 15:37:32

众所周知,Windows以易用而出名,也因此占据不少的服务器市场。

飘飘悠悠 发表于 2015-2-12 18:54:43

通过这次激烈的讨论,我从大家身上学到了太多,开阔了眼界,不管是支持我的还是骂我的,都感谢你们。

谁可相欹 发表于 2015-3-3 06:20:34

提供基于组件、事件驱动的可编程网络表单,大大简化了编程。还可以用ASP.NET建立网络服务。

分手快乐 发表于 2015-3-18 03:27:10

能产生和执行动态、交互式、高效率的站占服务器的应用程序。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写。

精灵巫婆 发表于 2015-3-25 11:13:50

在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗?
页: [1]
查看完整版本: ASP.NET网页设计自界说ViewState的保留体例