我有两个方法重载:

bool HasRight(RightType rightType, string cityId);
bool HasRight(RightType rightType, string cityAlias);

当然,由于方法签名相同,因此不会编译。在这种情况下,解决命名问题的最佳方法是什么?

最佳答案

您立即可以区分ID和别名吗?简单地说:

bool HasRight(RightType rightType, string cityIdOrAlias)


如果不清楚,则类似于“如果以:开头,例如:nyc,则为id,否则假定为别名”。其他选项:


后缀名:

bool HasRightById(RightType rightType, string cityId)
bool HasRightByAlias(RightType rightType, string cityAlias)

两者都取,并在方法中恰好要求一个:

bool HasRight(RightType rightType, string cityId, string cityAlias)

09-25 18:31