我有一个使用会话状态的ASP.Net项目,我想更加严格一点,我们如何访问会话状态,我不喜欢所有在代码中浮动的字符串。我还需要知道何时在会话状态下存储/更新特定值以跟踪该对象的最新值。在ASP.Net中包装会话状态的首选方式是什么?
字符串问题很容易使用常量来解决,但它无助于跟踪。将它们封装在一个单一类是有吸引力的,但我必须通过会话对象的那类,这似乎有点凌乱
我想使用的两个选项之一:
- 扩展getter和setter对会话对象
- 对会话对象扩展方法与getter和setter
第一个给我的语法返回一个类:
第二得出:
var thing = Session.Wrapper().Thing;
Session.Wrapper().Thing = thing;
两者都有自己的申诉,不过,我倾向于第二种。在理想的世界中,我希望能够做到这一点:
var thing = Session.Thing(); // easy to do
Session.Thing() = thing; // don't think it's possible
处理这个问题的首选方式是什么?其他任何一种方式,或者我只是做错了?
谢谢,我一直在想它。我应该寻找如何从别处访问会话状态,而不是试图扩展HttpSessionState对象。 – baralong 2010-08-14 00:49:54