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にあるため、コントローラーからそのクラスを呼び出す方法がわかりません。
リストにアイテムを追加する必要があるたびにこのクラスのインスタンスを取得する必要があるため、シングルトンパターンを使用する必要があるかどうかは疑問です。そうだと思います。