if(Session["***"] == null) ,这样简直太繁琐了。
对于上述两个问题,我的解决方案是提供一个SessionInterPagesHelper类,如果我们需要在页面之间传递数据,那么就直接访问这个类就好了,并且SessionInterPagesHelper会自动管理session数据的初始化,我们也不用在使用之前判空了。SessionInterPagesHelper的一个简单示例如下所示:
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
![](https://zhuweisky.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
这样就将需要在多个page之间维护的地方集中在一处,而且通过const string定义键名,我们可以在编译时发现重名的情况。另外可以看到,SessionInterPagesHelper已经帮我们做好的容器初始化的工作,我们只需要在一个地方向容器(比如SelectedUsersList)中添加数据,而另外一个页面从对应的容器中取数据就行了。如果你使用完了数据,而且后面也不再需要这些数据,你可以调用对应的Clear方法(如ClearSelectedUsersList)。
原文:
http://blog.csdn.net/zhuweisky/archive/2005/08/01/443459.aspx