1

Есть модели:

public class UserAnswersModel
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Option { get; set; }

    public ICollection<UserAnswer> userAnswers { get; set; }

    public int UserId { get; set; }
    public ApplicationUser User { get; set; }
}

public class UserAnswer
{
    public int id { get; set; }
    public int idQuestion { get; set; }
    public int idAnswers { get; set; }

    public int UserAnswerId { get; set; }
    public UserAnswersModel UserAnswers { get; set; }
    public UserAnswer()
    {
        UserAnswers = new UserAnswersModel();
    }
}

И код в контроллере:

    public ActionResult AnswerTest(UserAnswersModel userAnswersModel, int[] idA)
    {
        int i = 0;
        UserAnswersModel model = new UserAnswersModel();
        if (idA != null)
        {
            foreach (var item in idA)
            {
                i++;
                int fmp = db.Answers.Find(item).QuestionId;
                int tmp = item - db.Answers.FirstOrDefault(x => x.QuestionId == fmp).id + 1;
                model.Name = userAnswersModel.Name;
                model.Option = userAnswersModel.Option;
                model.userAnswers.Add(new UserAnswer { idQuestion = i, idAnswers = tmp });
            }                
        }            
        else
        {
            ViewBag.Null = "Вы не дали ни одного ответа!";
            return View();
        }
        return View();
    }

При выполнении данного кода происходит ошибка "System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта."" на строке

model.userAnswers.Add(new UserAnswer { idQuestion = i, idAnswers = tmp });
  • 1
    public ICollection<UserAnswer> userAnswers { get; set; } забыли инициализировать – tym32167 Nov 05 '19 at 14:36

0 Answers0