猿问

为什么在使用所有日期之前,列表中没有n个记录和x个日期(每个日期2个不同的记录)填充?C#

int dateOffset = 0;

DateTimeOffset currentDate = DateTimeOffset.Now;

do

{

    int sameDayCount = 0;

    do

    {

        for (int record = 0; record < List.Count; record++)

        {

            Client client = new Client();

            client.Name = List[record].Name;

            client.Date = currentDate.AddDays(dateOffset);

            List2.Add(client);

            sameDayCount += 1;

        }

    } while (sameDayCount < 2);

    dateOffset += 1;

} while (dateOffset < 30);

以上是我编写的代码,这要归功于我对C#语言的了解和丰富的经验。如您所料,它不能按预期方式工作。


我需要List2用List和附加元素-中的数据填充DateTime。


基本上,我希望将客户的名称安排为30天,每天两次。


在我写的代码中,我希望它能do{} while (sameDayCount < 2);起作用,但是sameDayCount += 1;它在for循环内并且do{} while实际上等待for循环完成(到达时record == List.Count)。无论如何,for循环将从头开始,record = 0并且我需要它从每天达到2条记录时被遗漏的最后一点继续。


知道我该如何解决该问题吗?


因此有:


具有有限记录数的列表(客户名称)


与记录一起分配的30天


每个日期必须有两个不同的记录


带有记录的列表必须从上次删除的地方重新读取


当列表完全迭代时(b = List.Count),它从b = 0重新开始


到30天时,整个循环结束。


简而言之,我的问题根本不清楚。假设第一个列表包含5个客户端(数量可能有所不同)。我想用这5个客户+ 7天填充第二个列表。我希望第二个列表变为:


第一天-客户1,客户2


第2天-客户3,客户4


第3天-客户5,客户1


第4天-客户2,客户3


第5天-客户4,客户5


第6天-客户1,客户2


第7天-client3,client4


陪伴而非守候
浏览 164回答 3
3回答
随时随地看视频慕课网APP
我要回答