保存对象详细信息

时间:2020-01-14 10:22:43

标签: asp.net-core .net-core asp.net-core-mvc

我在多个区域使用用户对象(属性电子邮件,显示名称,权限...)。 登录后是否可以加载用户详细信息并将其保存为完整的实时时间? 还是我需要通过每次加载一个新页面来从Azure数据库中重新加载用户信息?

问候 斯蒂芬

1 个答案:

答案 0 :(得分:0)

您的问题很难理解,但是如果您要询问是否需要针对每个请求查询用户,答案是肯定的。 HTTP是无状态协议。发出的每个请求好像之前或之后均未发生任何事情。换句话说,您在上一个请求中从数据库中查询了某些内容这一事实与当前请求无关。

可以通过将对象的序列化表示形式保留在会话存储中来使用会话来伪造状态。但是,如果您做对的话,会话存储本身就是一个数据库,因此它仍然会涉及查询。唯一的好处是查询将是简单的。换句话说,如果您的原始查询极其复杂和/或耗时,则保留会话或其他形式的缓存具有一定的价值。但是,按ID查询行与查询所获得的查询一样简单,所以这里不是这种情况。

简短的说,如果您再次需要该用户,则只需再次查询即可。