我有一个带有这个定义的类TaskWeekUI:
public class TaskWeekUI {
public Guid TaskWeekId { get; set; }
public Guid TaskId { get; set; }
public Guid WeekId { get; set; }
public DateTime EndDate { get; set; }
public string PersianEndDate { get; set; }
public double PlanProgress { get; set; }
public double ActualProgress { get; set; } }
Run Code Online (Sandbox Code Playgroud)
我写了这个查询:
TaskWeekUI ti = tis.First( t => t.PlanProgress > 0 && t.EndDate == tis.Where(p => p.PlanProgress != null && p.PlanProgress > 0).Max(w => w.EndDate));
Run Code Online (Sandbox Code Playgroud)
这个查询是真的吗?我能比这更好地写出我的查询吗?
我有一个班级:
Public Class Task
{
Public Guid TaskId { get ; set }
Public Guid ParentId { get ; set }
...
}
Run Code Online (Sandbox Code Playgroud)
而另一课:
Public Class ContractDetail
{
Public Guid ContractDetailsID {get;set}
Public Guid TaskId { get;set}
...
}
Run Code Online (Sandbox Code Playgroud)
我想检查所有任务是否有ContractDetail然后做一些事情我写了这个查询:
List<Guid> Sids = new List<Guid>();
Sids = Tasks.Where(p => p.ParentId == ParentId).Select(p => p.TaskId).ToList();
if(ContractDetails.All(p => Sids.Contains(p.TaskId))
{
int i = 5;
.....
}
Run Code Online (Sandbox Code Playgroud)
但它总是返回false.
如何检查所有任务是否有ContractDetails?