Asp.Net Singleton Pattern场景

在Asp.Net中,在什么情况下我将使用单例,因为大部分工作可以通过检查它是否为空来完成Session / Cache / Static。

请参考我之前的问题

单例模式/检查空 – 在使用带会话的Asp.Net时

我认为你将Singleton模式的特定实现与概念本身混淆。 您之前的问题/实现可以在用户会话中解释为Singleton,如果您保存在Application缓存中,则它将是ASP.NET应用程序的Singleton。

Singleton只是意味着任何时候只有一个特定对象的实例,这是由应用程序强制执行的 – 您如何强制执行此实现细节可能会根据您选择的平台/语言而有所不同。

特别是对于ASP.NET,您仍然可以使用静态变量为C#使用标准单例模式(请参阅在C#中实现单例模式 )。 如果您的应用程序在Web场方案中使用,则只有多个实例,也请参阅此SO线程: 静态类实例是否对ASP.NET中的请求或服务器是唯一的?