在Web应用程序中使用公共静态只读对象有什么不利之处吗?我以前没用过它们。
我有一个Web应用程序,需要根据用户的权限和现有操作的状态更改页面上的显示。
这是为其能力返回自定义对象的静态类。
public static class Abilities
{
public static readonly Ability ViewPage = new Ability()
{
LinkText = "something",
Hidden = false,
//Any other additional unchanging properties
}
}
然后,对于每个用户,当他们登录时,有一种方法可以设置他们应该拥有的能力
public class User
{
public List<Ability> GetMyAbilities()
{
var myAbilities = new List<Ability>();
if //some programming logic here
myAbilities.Add(Abilities.ViewPage);
return myAbilities;
}
}
这似乎按预期工作,但我想知道在为多个用户使用此方法时是否存在任何缺点或问题?
根据评论 - 添加一些细节。为每个用户登录Web应用程序时创建用户类。能力列表是指他们登录后可以执行的操作。因此,每个用户将获得他们登录默认页面时所具有的能力列表。