私はいくつかのデータを返すための次のメソッドを持っています:
public List<Document> GetDocumentsList(Guid sessionID, bool includeValid, bool includeExpired, bool includeAboutToExpire)
{
using (DB db = new DB())
{
// get the active documents
var docs = db.Documents
.Where(d =>
db.EmployeeStatuses
.Any(s => s.EmpID == d.EmpID && s.StatusEndDate == null && s.Status == "Active")
);
// how to filter the result depending on includeValid, includeExpired and includeAboutToExpired parameters?
return docs.ToList()
}
}
ここでの問題は、パラメーターに応じて結果をフィルター処理したいということです。bool
たとえば、includeValid
が true の場合は有効なドキュメントが含まれ、includeExpired
が true の場合は期限切れのドキュメントが含まれます。3 つすべてを取得できます。 true またはそれらの 1 つまたは 2 つが true です。DB を複数回呼び出したくありません。1回の呼び出しでこれを行うことができるロジックはありますか?