C# 序列化json字符串中的会话对象
我构建了一个强类型会话对象,如下所示:C# 序列化json字符串中的会话对象,c#,asp.net,C#,Asp.net,我构建了一个强类型会话对象,如下所示: class MySession { public string UsedID {get;set;} public List<int> ListOfInt {get;set;} public List<string ListOfString {get;set;} ..... } 之后在代码中,我可以使用session.XYZ语法访问每个属性 这真的很酷,但我认为最好将会话存储在数据库中 我正在考虑将MySession对象序
class MySession
{
public string UsedID {get;set;}
public List<int> ListOfInt {get;set;}
public List<string ListOfString {get;set;}
.....
}
之后在代码中,我可以使用session.XYZ语法访问每个属性
这真的很酷,但我认为最好将会话存储在数据库中
我正在考虑将MySession对象序列化为json字符串,并将该字符串存储在数据库中,以便在加载页面时检索和反序列化
这是一个好方法吗
感谢您的建议。介绍了使用状态服务器或进程内会话存储的优缺点
至于使用JSON,它肯定比XML更轻量级,也同样灵活——至少对于您的目的来说是如此。我认为没有理由不使用它。介绍了使用状态服务器或进程内会话存储的优缺点
至于使用JSON,它肯定比XML更轻量级,也同样灵活——至少对于您的目的来说是如此。我认为没有理由不使用它。首先确保您需要会话中的所有数据。我觉得您更需要创建数据库表并在表中存储数据 如果您确定需要会话,那么使用标准的
是有意义的。你可以阅读更多关于
如果您确定需要自定义序列化,那么使用二进制序列化而不是JSON是有意义的。它将需要更少的内存来存储,更少的资源来序列化/反序列化。首先确保会话中需要所有数据。我觉得您更需要创建数据库表并在表中存储数据 如果您确定需要会话,那么使用标准的
是有意义的。你可以阅读更多关于
如果您确定需要自定义序列化,那么使用二进制序列化而不是JSON是有意义的。它将需要更少的内存来存储,更少的资源来序列化/反序列化。我认为,这就是你应该做的。在表中存储int列表或字符串列表的最佳方法是什么?@frenchie-要正确回答这个问题,知道int列表存储的是什么会有所帮助。在不知道这一点的情况下,答案是:在int type上有一列的表中。?整数列表存储整数。在您看来,a)将列表序列化为字符串并存储1个字符串还是b)存储x行整数更好?@frenchie-我知道列表存储整数:)。问题是这些INT是什么,以及如何使用它们。换言之,你是否需要在每节课中都用到它们,你是否需要在每节课中都用到它们。列表最初是如何生成的,列表的来源是什么?我想,这就是你应该做的。在表中存储int列表或字符串列表的最佳方法是什么?@frenchie-要正确回答这个问题,知道int列表存储的是什么会有所帮助。在不知道这一点的情况下,答案是:在int type上有一列的表中。?整数列表存储整数。在您看来,a)将列表序列化为字符串并存储1个字符串还是b)存储x行整数更好?@frenchie-我知道列表存储整数:)。问题是这些INT是什么,以及如何使用它们。换言之,你是否需要在每节课中都用到它们,你是否需要在每节课中都用到它们。列表最初是如何生成的,列表的来源是什么?
MySession TheSession = Session["UserSession"] as MySession;