0

I am trying to assign a value to a nested object however I get a null exception.

System.NullReferenceException: Object reference not set to an instance of an object.

code below

addingTaskScheduleDto addToReturnTask = new addingTaskScheduleDto();


userTaskDto test = new userTaskDto();
test.UserId = task.UserTasks.FirstOrDefault().UserId;
test.TaskScheduleId = task.UserTasks.FirstOrDefault().TaskScheduleId;

// null exception happens on the code below
addToReturnTask.UserTasks.Add(test);

addingTaskScheduleDto model

public class addingTaskScheduleDto
{
    public int Id { get; set; }
    public string Title { get; set; }
    public DateTime? Start { get; set; }
    public DateTime? End { get; set; }

    public List<userTaskDto> UserTasks {get; set;}
}


public class userTaskDto
{
    public int UserId { get; set; }
    public int TaskScheduleId { get; set; }
}

1 Answers1

1

You get an exception because UserTasks is null. You need to initialize it with an empty list at some point. You could do it when you instantiate addingTaskScheduleDto like this

    public class addingTaskScheduleDto
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public DateTime? Start { get; set; }
        public DateTime? End { get; set; }
    
        public List<userTaskDto> UserTasks {get; set;} = new List<userTaskDto>();
    }
Hans Kilian
  • 10,543
  • 1
  • 14
  • 21