C# 获取日期数组(年度和绝对)

C# 获取日期数组(年度和绝对),c#,linq,linq-to-sql,C#,Linq,Linq To Sql,我正在执行以下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<

我正在执行以下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()
    }
公共静态IEnumerable GetAllByEmployee(int-employeeID)
{
var v=LockedDates.GetAll();
从v中的p返回,其中p.EmployeeID==EmployeeID选择p;
}
公共静态IEnumerable GetAllByCompany()
{
var v=LockedDates.GetAll();
从v中的p返回,其中p.EmployeeID==null选择p;
}
公共静态列表GetAllForEmployee(int employeeID)
{
var employist=GetAllByEmployee(employeeID);
var compList=GetAllByCompany();
//你怎么办???
从empList中的p和compList中的q返回,其中p和q不重复。toList()
}
它们使用LINQ-SQL

锁定日期有日期和日期。如果IsYear为真,则不应考虑年份。永远不要考虑时间

我现在需要一个功能,将包括所有锁定的日期,该员工和公司的一个名单,没有任何重复。所以如果isyear&&dd/mm是==或!IsYearly&&dd/mm/yyyyy are==则存在重复项。什么可能是一种有效的、非天真的方法

谢谢你不能这样做吗

    var v = LockedDates.GetAll();
    return from p in v where p.EmployeeID == null || p.EmployeeID == employeeID select p;
你不能这样做吗

    var v = LockedDates.GetAll();
    return from p in v where p.EmployeeID == null || p.EmployeeID == employeeID select p;
source
可以通过
Union
方法轻松完成:

var source = GetAllByEmployee(employeeID).Union(GetAllByCompany());
source
可以通过
Union
方法轻松完成:

var source = GetAllByEmployee(employeeID).Union(GetAllByCompany());

如果IsYearly&&dd/mm是==或,则此条件的含义是
!IsYearly&&dd/mm/yyyy是==
?等于什么?等于列表中已有的日期,首先我要添加所有员工日期,然后只添加不重复的公司日期。上面我定义了什么是复制。如果IsYearly&&dd/mm are==或!IsYearly&&dd/mm/yyyy是==?等于什么?等于列表中已有的日期,首先我要添加所有员工日期,然后只添加不重复的公司日期。上面我定义了一个副本是什么。没有,因为公司可能有与员工相同的非工作日。没有,因为公司可能有与员工相同的非工作日。这会考虑2个年月日是否相同的情况?是的,他们会被平等对待。如果我想做类似的事情,但这次有一个日期范围,我该怎么做。假设我有2013年1月22日至2014年2月12日(含)。但这一次列表将是最新的,任何IsYear都将包括范围内的年份,所以我也有2013年12月25日和2014年12月25日。我真的不明白这一点。也许你应该发布另一个关于这个的问题。。。有了样本数据,等等,看看我的新问题,这会考虑到2个年月有相同的月份和日期吗?是的,他们会被平等对待。如果我想做类似的事情,我需要做什么,但是这次的日期范围。假设我有2013年1月22日至2014年2月12日(含)。但这一次列表将是最新的,任何IsYear都将包括范围内的年份,所以我也有2013年12月25日和2014年12月25日。我真的不明白这一点。也许你应该发布另一个关于这个的问题。。。关于样本数据等,请参见我的新问题