我正在编写一个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
对象,就使用此静态类?
我应该注意哪些缺点/优势?
提前致谢。
答案 0 :(得分:0)
您有多种选择, 选项1:您可以创建一个单独的类并将该方法放在该类中,该类不必是静态的。 选项2:您可以创建帐户类的扩展方法。 选项3:A。对于Controller,创建一个基类,如:公共类BaseController:Controller ,并为所有控制器继承 BaseColtroller ,为服务继承B.相同。
感谢
Raviranjan