我将开发一个成员(member)系统,该系统将具有 7 级以上的用户角色以及许多其他用户功能。例如,对一个城市拥有 3 级权限,对另一个城市拥有 5 级权限。
是否可以比较 2 个对象,就好像它们具有数值一样?例如,将用户的角色与特定级别的角色进行比较。
if (objUser.role >= userRole.userLevel3){
//do something
}
权限规则比我简单解释的要复杂得多。因此,将用户的角色与最低负担能力进行比较是我的目标。我是该项目的首席开发人员,我的工作是为经验不足的开发人员提供易于使用的成员(member)系统。
请将这个问题视为大声思考,我愿意接受想法/讨论。
C# 允许您重载比较运算符,所以这绝对是可能的。您可以重载运算符对 <
和 >=
(它们必须成对重载),像这样:
class AccessLevel {
...
public static bool operator <=(AccessLevel x, AccessLevel y) {
...
}
public static bool operator >(AccessLevel x, AccessLevel y) {
...
}
}
我是一名优秀的程序员,十分优秀!