从启动时保存变量以供以后形式使用的最佳实践是什么?
例如,如果他们对记录进行了任何更改,我需要存储一个用户名以进行日志记录。该应用程序有多种形式,不断地来回传递它似乎不切实际。
您可以将这些变量作为静态成员保留在程序集中的任何位置并在任何地方使用它们,而不必使用单例,或者使用静态配置类之类的东西,但是如果您真的想做到这一点,我会推荐一个用户相关的会话对象,可以像 Pierre 所说的那样使用单例返回。
更新
似乎没有阅读整篇文章的人对我的回答投了反对票,所以我想我应该再澄清一下。如果您知道自己在做什么并且适用于所有事情,则使用静态变量没有问题,但在这种情况下,我什至说我会使用非静态用户相关对象,所以我希望 OP 做出明智的选择.
为什么不使用当前可用的基础架构,例如 Properties.Settings.Default 顺便说一下是一个单例?
我建议不要轻易使用任何静态的东西。首先想想,什么时候需要这些变量,谁(或什么)需要它们?您不能使用包含它们的类,并实例化一次,并在需要它的对象之间共享它吗?
如果确实到处都需要它,并且“应该”是静态的,那么也许可以在某个辅助类中将其设为静态。