请问一下如何拷贝一个对象

pigleter 2006-12-06 03:00:26
定义了一个全局的DataSet DS1,然后在函数fn1()中检索数据库并把结果赋给DS1,但当我在另外一个函数fn2()中调用这个DS1是总是提示说“引用没有设置到对象”
...全文
208 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoliangwh 2006-12-08
  • 打赏
  • 举报
回复
作为类成员的DS1,在页面Response之后,随着Page对象都销毁了~~

fn2 如果在一个请求过程中是可以访问到的。如果在请求之后,fn2 就无法访问了。

重新查一边,要不就保存到Session里(建议不要把大数据量保存到Session里)
机器人 2006-12-06
  • 打赏
  • 举报
回复
建议抽出一个方法,填充DataSet的方法,在每次请求的时候都调用该方法。以避免把大数据量存放到Session里。
pigleter 2006-12-06
  • 打赏
  • 举报
回复
现在用Session可以了,不过如果我要保存的数据量比较大怎么办?
pigleter 2006-12-06
  • 打赏
  • 举报
回复
哦,先尝试一下。
cpp2017 2006-12-06
  • 打赏
  • 举报
回复
是啊,应该在同一个事件中确保在fn2前面都运行了fn1
======
可能的原因不一定是ds为null可能是其他对象为null?
vbman2003 2006-12-06
  • 打赏
  • 举报
回复
是啊,应该在同一个事件中确保在fn2前面都运行了fn1
cpp2017 2006-12-06
  • 打赏
  • 举报
回复
cpp2017(幕白兄) 可不可以讲得详细点。我可以确定fn1在fn2前运行了,而且DS1中是有结果的。
===========================
如果先执行fn1 然后点个按纽再运行fn2,这样不算做fn1在fn2前运行.
dlzhangln 2006-12-06
  • 打赏
  • 举报
回复
Session里也可以
dlzhangln 2006-12-06
  • 打赏
  • 举报
回复
在is not postback 之外给dataset赋值,即每次page_load你的全局ds都能被保证不为null,否则的话肯定不行,刷新之后ds就被初始化了
真相重于对错 2006-12-06
  • 打赏
  • 举报
回复
fn1()
{
Dataset ds1 = ...
Session["data"] = ds1;
}
fn2()
{
if( Session["data"] != null )
{
DataSet ds1 = (DataSet)Session["data"]
}
}
pigleter 2006-12-06
  • 打赏
  • 举报
回复
jackljane(jack)
我的DS1就是全局的啊。。。
机器人 2006-12-06
  • 打赏
  • 举报
回复
作为类成员的DS1,在页面Response之后,随着Page对象都销毁了~~

fn2 如果在一个请求过程中是可以访问到的。如果在请求之后,fn2 就无法访问了。

重新查一边,要不就保存到Session里(建议不要把大数据量保存到Session里)
jackljane 2006-12-06
  • 打赏
  • 举报
回复
DS1 你是放在fn1()中的,在fn1()可以访问
在fn2()中调用这个DS1是出错。是因为在fun2()中访问不到ds1.
除非你把ds1也做成全局的。或者作一个函数返回值的形式.
vbman2003 2006-12-06
  • 打赏
  • 举报
回复
要贴点相关代码看看
pigleter 2006-12-06
  • 打赏
  • 举报
回复
cpp2017(幕白兄) 可不可以讲得详细点。我可以确定fn1在fn2前运行了,而且DS1中是有结果的。
hy_lihuan 2006-12-06
  • 打赏
  • 举报
回复
ds不要放在内存里面,还是重新检索再调用比较好。你的情况测试一下是否刷新以后造成ds没有了
cpp2017 2006-12-06
  • 打赏
  • 举报
回复
在每次postback后.

确定在fn2前面都运行了fn1
gui0605 2006-12-06
  • 打赏
  • 举报
回复
写一个公用函数,传一条SQL进去,返回一个DataSet对象

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧