Asp.Net Singleton Pattern场景

use*_*683 2 c# asp.net

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

请参阅我之前的问题

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

Bro*_*ass 12

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

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

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