C# 公共静态方法 - 在用户之间共享信息



我有一个 asp.net 网站和一个类库作为项目参考。在类库中,我有几个公共类的静态方法。当用户登录到他们的帐户时,我会调用其中一个静态方法来加载与用户相关的信息。我有一些实例,当我以用户 A 身份登录时,我能够看到与用户 B 相关的信息。这是因为静态方法吗?

不,这是因为静态变量。这些由整个AppDomain共享 - 在这种情况下,这几乎意味着"该机器上的整个网站"。

如果没有更多信息,很难确切地知道你应该做什么,但我强烈怀疑你只是将用户信息存储在静态变量中,这永远不会是正确的方法。

如何管理用户会话取决于您,毫无疑问,已经为此编写了大量文本 - 但是使用静态变量将导致您所看到的问题。

可能是,我必须查看您的代码才能确定,信息是否也存储为静态? 那么这是正确的,因为静态在实例之间共享

最新更新