我的代码中有些逻辑,我想知道是否有更好的重写方法。我有两个用户定义的服务器对象(serverA和serverB),如果它们都是枚举ServerType
Web
或Database
,我想继续。
当前代码很笨拙:
if((serverA.ServerType == ServerType.Web || serverA.ServerType == ServerType.Database) && (serverB.ServerType == ServerType.Web || serverB.ServerType == ServerType.Database))
{
// do stuff
}
我追求一种简洁的写作方式。
最佳答案
我将在您的用户定义的服务器对象中具有一个新属性
public class Server
{
public ServerType ServerType { get; set; }
public bool IsDatabaseOrWeb
{
get
{
return ServerType == ServerType.Web || ServerType == ServerType.Database;
}
}
}
然后你的函数看起来像这样
if (serverA.IsDatabaseOrWeb && serverB.IsDatabaseOrWeb)
{
// do stuff
}