静态类或多个对象引用

时间:2014-12-10 06:17:30

标签: class methods controller asp.net-mvc-5 static-class

我正在编写一个MVC 5互联网应用程序,我有一个问题,如果我应该在每个类中使用完全相同的方法,或者使用这种方法的静态类。

以下是方法:

public Account GetAccount(string userName)
{
    if (Session[userName] == null)
    {
        var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
        ApplicationUser user = userManager.FindByNameAsync(userName).Result;
        Session[userName] = user.account;
    }
    return Session[userName] as Account;
}

目前,我正在将此方法添加到许多控制器和服务类中。我应该在静态类中声明此方法一次,而不是在许多类中执行此操作,并且只要我想获取Account对象,就使用此静态类?

我应该注意哪些缺点/优势?

提前致谢。

1 个答案:

答案 0 :(得分:0)

您有多种选择,    选项1:您可以创建一个单独的类并将该方法放在该类中,该类不必是静态的。    选项2:您可以创建帐户类的扩展方法。    选项3:A。对于Controller,创建一个基类,如:公共类BaseController:Controller ,并为所有控制器继承 BaseColtroller ,为服务继承B.相同。

感谢
Raviranjan