【发布时间】:2016-05-24 17:19:14
【问题描述】:
我在 SoapUI 上收到 Object reference not set to an instance of an object. 错误。我使用记录器检查record 是否拥有正确的StartTime 和EndTime 但由于某种原因,当我尝试将包含userId 和TimePeriod 的record 对象添加到响应中时,我得到了该错误。此外,result 是具有从DataAccess 层返回的信息的变量。对此的任何帮助将不胜感激。
GetUserResponse response = new GetUserResponse();
UserRecord record = new UserRecord();
record.UserId = userId;
record.timePeriodList = new List<TimePeriod>();
for (int i = 0; i < result.Count; i += 2)
{
TimePeriod timeData = new TimePeriod();
timeData.StartTime = result[i].Time;
timeData.EndTime = result[i + 1].Time;
record.timePeriodList.Add(timeData);
}
response.UserRecordList.Add(record); // line I get that error
这是我回复的代码:
public class GetUserResponse
{
private List<UserRecord> userRecordList;
public List<UserRecord> UserRecordList
{
get { return userRecordList; }
set { userRecordList = value; }
}
}
public class UserRecord
{
private string userId;
private List<TimePeriod> timePeriodList;
public string UserId
{
get { return userId; }
set { userId = value; }
}
public List<RbeActivationPeriod> TimePeriodList
{
get { return timePeriodList; }
set { timePeriodList = value; }
}
}
public class TimePeriod
{
private DateTime startTime;
private DateTime endTime;
public DateTime StartTime
{
get { return startTime; }
set { startTime = value; }
}
public DateTime EndTime
{
get { return endTime; }
set { endTime = value; }
}
}
【问题讨论】:
-
response在哪里声明?userRecordList被实例化了吗? -
我在你的代码中看不到它,但我认为你已经实例化了你的变量响应?
-
@erik 我为你编辑了这篇文章。抱歉忘记了帖子上的声明。
-
@DarrenDavies 是的,响应已声明。是否需要启动 userRecordList?我已经编辑了帖子以反映更改。谢谢
-
问题行是
timeData.EndTime = result[i + 1].Time;
标签: c# arrays list class arraylist