次の2つの機能+ 1が進行中です。
public static IEnumerable<LockedDate> GetAllByEmployee(int employeeID)
{
var v = LockedDates.GetAll();
return from p in v where p.EmployeeID == employeeID select p;
}
public static IEnumerable<LockedDate> GetAllByCompany()
{
var v = LockedDates.GetAll();
return from p in v where p.EmployeeID == null select p;
}
public static List<LockedDate> GetAllForEmployee(int employeeID)
{
var empList = GetAllByEmployee(employeeID);
var compList = GetAllByCompany();
//What do???
return from p in empList and from q in compList where p and q are not duplicate . toList()
}
これらは LINQ-SQL を使用します。
LockedDate には Date と IsYearly bool があります。IsYearly が true の場合、年は考慮されません。時間は決して考慮されるべきではありません。
ここで、従業員が持っているすべての LockedDates と会社の LockedDates を、重複することなく 1 つのリストに含める関数が必要です。したがって、IsYearly && dd/mm が == または !IsYearly && dd/mm/yyyy が == の場合、重複があります。これを行うための効率的で単純でない方法は何でしょうか?
ありがとう