日時値の一般的なリストがあります:weekADates
TimeTable エンティティの一般的なリストがあります: response.TimeTableWeek
public class TimeTable
{
public int LessonNumber { get; set; }
/// <summary>
/// For each day and lessonnumber in the week there is a schooclass code assigned
/// </summary>
public IDictionary<DayOfWeek,string> WeeklySchoolclassCodes { get; set; }
}
このコードを LINQ クエリに変更する必要があります。
var periodList = new List<Period>();
foreach (DateTime date in weekADates)
{
foreach (TimeTable timetable in response.TimeTableWeek)
{
for (int i = 0; i < timetable.WeeklySchoolclassCodes.Count; i++)
{
var p = new Period();
p.LessonNumber = timetable.LessonNumber + 1;
p.LessonDate = date;
p.SchoolclassCode = timetable.WeeklySchoolclassCodes[date.DayOfWeek];
periodList.Add(p);
}
}
}
.Select と .SelectMany のさまざまなバリエーションを試しましたが、解決策が得られませんでした。
これは、期間のリストがどのように見えるかです。
これをどのようにlinqに変更しますか?