我创建了一个类的Global.asax像控制器调用它:创建Global.asax中的静态对象,从
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
AuthConfig.RegisterAuth();
//SHOULD I PUT THE LIST DESCRIBLED BELOW IN HERE?
}
public sealed class security
{
private static readonly Lazy<security> lazy = new Lazy<security>(() => new security());
public static security Instance { get { return lazy.Value; } }
private security()
{
}
//OR SHOULD I PUT THE LIST DESCRIBLED BELOW IN HERE?
}
问:
- 我使用的创建静态列表与所有用户共享。这是我需要的:
public static List<permissionTemp> userPermissionSet { get; set; }
,但我不知道该放哪条线,以便在应用程序启动后立即创建。 - 创建完成后,我需要获取该列表以添加在用户登录时创建的对象,但我不知道如何从控制器调用该类,因为它在Global中。 asax
我不确定是否需要使用单例模式,因为每次我需要将该项目添加到列表中时,我将需要获取此类的实例。我假设是!
不要紧,在代码中**什么特别的**你写的一个类型的源文件。在那里有很多建议,如果我深入其中一些,你已经打破了一个(但没问题)。就像我说的。你在'Global.asax'中声明的类不会让你的控制器无法访问它。缺少'使用'或汇编引用是什么会这样做。所以......全球可访问的单身'security.Instance'很好。不要担心单身。这不会让你的应用运行缓慢(其他的事情)。 “下面列出的列表”究竟是什么? – 2013-03-01 15:00:50
n.b.描述不是一个字 – SpaceBison 2013-03-01 15:23:41
@SpaceBison https://www.google.com.br/search?q=Describled&aq=f&oq=Describled&aqs=chrome.0.57j62l3.230&sourceid=chrome&ie=UTF-8 – 2013-03-01 15:24:34