private bool SearchFilter(object sender)
{
CommDGDataSource item = sender as CommDGDataSource;
if (FilterPropertyList.IsErrorFilter)
{
if (!item.Error)
return false;
}
if (FilterPropertyList.IsDestinationFilter)
{
if (!(item.Destination == FilterPropertyList.Destination))
return false;
}
if (FilterPropertyList.IsSourceFilter)
{
if (!(item.Source == FilterPropertyList.Source))
return false;
}
return true;
}
上面的代码效果很好,但是我想知道是否还有一种优雅的方式可以编写上面的代码。
最佳答案
您可以通过进行如下较小的更改来使代码更具可读性
private bool SearchFilter(object sender)
{
CommDGDataSource item = sender as CommDGDataSource;
if (FilterPropertyList.IsErrorFilter && !item.Error)
return false;
if (FilterPropertyList.IsDestinationFilter && item.Destination != FilterPropertyList.Destination)
return false;
if (FilterPropertyList.IsSourceFilter && item.Source != FilterPropertyList.Source)
return false;
return true;
}
关于c# - 处理这种逻辑的更优雅的方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11948956/