jim*_*jim 4 c# linq nhibernate lambda extension-methods
我上课了.
public class MedicalRequest
{
private int id
private IList<MedicalDays> Days
private string MedicalUser
...
}
Run Code Online (Sandbox Code Playgroud)
和另一个
public class MedicalDays
{
private int id;
private DateTime? day
private MedicalRequest request
...
}
Run Code Online (Sandbox Code Playgroud)
我有医疗用户,所以我可以选择一个
IList<MedicalRequest> reqList = dao.FindAll(example);
Run Code Online (Sandbox Code Playgroud)
在这一点上我希望能做的就是将医疗日列表弄平并返回DateTime日.
就像是
IList<DateTime> dateList = reqList.SelectMany(i => i.MedicalDays.day);
Run Code Online (Sandbox Code Playgroud)
有人能给我一个正确的方向吗?
谢谢你的时间.
Jon*_*eet 16
你快到了:
IEnumerable<DateTime?> dateList = reqList.SelectMany(i => i.MedicalDays)
.Select(m => m.day);
Run Code Online (Sandbox Code Playgroud)
要么:
IEnumerable<DateTime?> dateList = reqList.SelectMany(i => i.MedicalDays,
(i, m) => m.day);
Run Code Online (Sandbox Code Playgroud)
IList<T>而不是IEnumerable<T>您可以调用ToList()结果如果您需要使用DateTime而不是DateTime?您可以过滤掉这样的null天:
IEnumerable<DateTime?> dateList = reqList.SelectMany(i => i.MedicalDays)
.Select(m => m.day)
.Where(x => x.HasValue)
.Select(x => x.Value);
Run Code Online (Sandbox Code Playgroud)IEnumerable<DateTime> dateList = reqList.SelectMany(i => i.MedicalDays)
.Select(i => i.day);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2662 次 |
| 最近记录: |