日期:2014-05-18  浏览次数:20537 次

如何让一个自定义类在PostBack的时候不被重新实例化?
我在外部写

clsSub sub = new clsSub();

这样,每次提交页面的时候,sub就会被重新初始化



------解决方案--------------------
C# code

if(!PostBack)
{
clsSub sub = new clsSub();
}

------解决方案--------------------
if (Page.IsPostBack != true) {
// Do processing
}
------解决方案--------------------
lz的问题很有意思,我想问问lz当new一个clsSub()会分配空间么?
如果会分配空间,分配多大,为什么????

要是搞懂的话,这样的问题就迎刃而解了
------解决方案--------------------
点击按钮的时候再实例化不行吗,用完了就释放
clsSub sub = new clsSub(); 
过程.........
sub=null
------解决方案--------------------
可以用viewstate[""]

你用的是字符串么?
------解决方案--------------------
好像除了session没别的东西,用持久化,换汤不换药,也是session

个人见解,看看别人怎么说
------解决方案--------------------
http://www.qqgb.com/NetProgramme/ASPNet/aspnetdatabase/NetProgramme_124932.html
------------------------------
一篇介绍nhibernate的文章。
怎么说那,包装了数据访问+session,不过session换了名了叫做会话工厂,微软真是够搞笑!
------解决方案--------------------
放SESSION或者VIEWSTATE,在存入SESSION或VIEWSTATE之前将对象序列化
clsSub sub = null;
if (!Page.IsPostback)
{
sub = new clsSub();
}
else
{
sub = ViewState["YOUR_OBJ_NAME"];
}
------解决方案--------------------
学习
顺便接个分
------解决方案--------------------
static
------解决方案--------------------
如果楼主的意思是想提高性能,那么直接用缓存就得了.
------解决方案--------------------
if (!Page.IsPostback) 

sub = new clsSub(); 


------解决方案--------------------
我想知道除了VS和SESSION外,是否还有别的办法实现呢
---------------
类实例必须序列化保存...原因...你去看看HTTP协议和ASP.NET页面生存周期都是怎么回事就明白了...
------解决方案--------------------
xue xi
------解决方案--------------------
缓存可以
------解决方案--------------------
!PostBack这个属性
------解决方案--------------------
if(!PostBack)
{
clsSub sub = new clsSub();
}

------解决方案--------------------
在网上搜下"单例模式"
------解决方案--------------------
没有办法,不知道.
------解决方案--------------------
mark
------解决方案--------------------
public static SampleSingleton2 Singleton
{
get
{
if (m_Instance == null)
{
lock (typeof(SampleSingleton2))
{
if (m_Instance == null)
{
m_Instance = new SampleSingleton2();
}
}
}