C# 如何在c中向列表中的列表添加列表#
我已经创建了一个列表名称C# 如何在c中向列表中的列表添加列表#,c#,asp.net-mvc,C#,Asp.net Mvc,我已经创建了一个列表名称AllCalendarEventInfo,其中还有两个列表。当我试图将列表添加到列表的第一个索引中时,它抛出indexootfrangeexception model.AllCalendarEventInfo[i].allEventDates.Add(date); model.AllCalendarEventInfo[i].allCalendarDates.AddRange(model.AllDateList); 在这两行中。请帮忙 这是我的密码: var i = 0
AllCalendarEventInfo
,其中还有两个列表。当我试图将列表添加到列表的第一个索引中时,它抛出indexootfrangeexception
model.AllCalendarEventInfo[i].allEventDates.Add(date);
model.AllCalendarEventInfo[i].allCalendarDates.AddRange(model.AllDateList);
在这两行中。请帮忙
这是我的密码:
var i = 0;
model.event_dates =
_iadminSettingsService.GetEventDatesByEventId(model.event_id);
foreach (var date in model.event_dates)
{
var addDate = date.event_date_start;
while (addDate >= date.event_date_start && addDate <= date.event_date_stop)
{
model.AllDateList.Add(new CalendarDates
{
Id = date.event_id,
Date = Convert.ToDateTime(addDate)
});
if (addDate.HasValue)
{
addDate = addDate.Value.AddDays(+1);
}
}
model.AllCalendarEventInfo[i].allEventDates.Add(date);
model.AllCalendarEventInfo[i].allCalendarDates.AddRange(model.AllDateList);
model.AllDateList.Clear();
i++;
}
var i=0;
model.event_日期=
_iadminsettingservice.getEventDatesByVentid(model.event\u id);
foreach(模型中的var日期。事件日期)
{
var addDate=date.event\u date\u start;
而(addDate>=date.event\u date\u start&&addDate您需要添加一个
新建AllCalendarEventInfo
到
model.AllCalendarEventInfo
在您尝试使用索引器访问它之前。您正在尝试访问列表中的第一项,甚至在您向列表中添加任何内容之前,因此索引超出了范围
因此while之后的代码块应该以
model.AllCalendarEventInfo.add(new AllCalendarEventInfo());
model.AllCalendarEventInfo[i].allEventDates.Add(date); model.AllCalendarEventInfo[i].allCalendarDates.AddRange(model.AllDateList);
model.AllDateList.Clear();
i++;
很抱歉设置了格式,这是我手机上的如何初始化model.AllCalendarEventInfo?我想你只做model.AllCallendarEventInfo=new List(),所以当你访问AllEventDate时,你会点击IndexOutOfRangeException。太好了!正是我想要的!非常感谢你的帮助!:)
model.AllCalendarEventInfo.add(new AllCalendarEventInfo());
model.AllCalendarEventInfo[i].allEventDates.Add(date); model.AllCalendarEventInfo[i].allCalendarDates.AddRange(model.AllDateList);
model.AllDateList.Clear();
i++;