如何分解运算符

本文关键字:运算符 分解 何分解 | 更新日期: 2023-09-27 18:32:20

这可能很简单,但现在是深夜...我有两种方法:

public IQueryable<Post> GetNotSticky()
{
   return Get().Where(p => p.Type != PostType.Sticky);
}

而反之亦然

public IQueryable<Post> GetSticky()
{
   return Get().Where(p => p.Type == PostType.Sticky);
}

如您所见,操作员是唯一的区别。如何将这种 DRY 违规分解为一种很好的常用方法?感觉很简单,但现在解决方案我无法找到。

如何分解运算符

public IQueryable<Post> GetWithSticky(bool isSticky)
{
   return Get().Where(p => (p.Type == PostType.Sticky) == isSticky);
}