Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 写入模型时ArgumentOutOfRange异常_C#_Asp.net Mvc - Fatal编程技术网

C# 写入模型时ArgumentOutOfRange异常

C# 写入模型时ArgumentOutOfRange异常,c#,asp.net-mvc,C#,Asp.net Mvc,我第一次尝试写入模型以在我的视图中使用:第一次写入模型时,我得到一个ArgumentOutOfRangeException 首次写入阵列时出错: private IAdditionalQuestionsService _service; private SelectedAdditionalQuestionAnswerModel _model; private void InitializeController() { _service = GetObject<IAdditional

我第一次尝试写入模型以在我的视图中使用:第一次写入模型时,我得到一个
ArgumentOutOfRangeException

首次写入阵列时出错:

private IAdditionalQuestionsService _service;
private SelectedAdditionalQuestionAnswerModel _model;
private void InitializeController()
{
    _service = GetObject<IAdditionalQuestionsService>();
    //GetPageHeaderText(inst);
    ViewBag.GetPageTitle = "Additional Questions";
}

[HttpGet]
public virtual ActionResult Edit()
{
    Institution inst = _service.GetInstitution(State.GetInstitutionRecordId());
    _model = GetObject<SelectedAdditionalQuestionAnswerModel>();
    _model.AddQuestAnswModel = new List<AdditionalQuestionAnswerModel>();
    GetPageConfiguration1(inst);
    return View(_model);
}

AdditionalQuestionAnswerModel m = GetObject<AdditionalQuestionAnswerModel>();
int c = 0;
foreach (var x in inst.AdditionalQuestions)
{
    foreach (var y in x.AdditionalQuestionAnswers)
    {
        // Error is happening on next line *************
        _model.AddQuestAnswModel[c].QuestionText = x.QuestionText;
        _model.AddQuestAnswModel[c].InstitutionId = x.InstitutionId;
        _model.AddQuestAnswModel[c].AdditionalQuestionId = x.Id;
        _model.AddQuestAnswModel[c].AnswerText = y.AnswerText;
        _model.AddQuestAnswModel[c].IsSelected = false;
        c++;
    }
}
私人iAd附加问题服务;
私人选择附加问题回答模型(U模型),;
私有void InitializeController()
{
_service=GetObject();
//GetPageHeaderText(inst);
ViewBag.GetPageTitle=“其他问题”;
}
[HttpGet]
公共虚拟操作结果编辑()
{
Institution inst=_service.GetInstitution(State.GetInstitutionRecordId());
_model=GetObject();
_model.AddQuestAnswModel=新列表();
GetPageConfiguration1(安装);
返回视图(_模型);
}
AdditionalQuestionAnswerModel m=GetObject();
int c=0;
foreach(仪表附加问题中的var x)
{
foreach(x.AdditionalQuestionAnswers中的变量y)
{
//下一行发生错误*************
_model.AddQuestAnswModel[c].QuestionText=x.QuestionText;
_model.AddQuestAnswModel[c].InstitutionId=x.InstitutionId;
_model.AddQuestAnswModel[c].AdditionalQuestionId=x.Id;
_model.AddQuestAnswModel[c].AnswerText=y.AnswerText;
_model.AddQuestAnswModel[c].IsSelected=false;
C++;
}
}

您不能使用
\u model.AddQuestAnswModel[c]
,因为您从未将任何项目添加到列表中

相反,创建一个新对象并设置其值,然后将该项添加到列表中

大概是这样的:

AdditionalQuestionAnswerModel newItem = new AdditionalQuestionAnswerModel();

//set the values here to newItem

_model.AddQuestAnswModel.Add(newItem);

您不能使用
\u model.AddQuestAnswModel[c]
,因为您从未将任何项目添加到列表中

相反,创建一个新对象并设置其值,然后将该项添加到列表中

大概是这样的:

AdditionalQuestionAnswerModel newItem = new AdditionalQuestionAnswerModel();

//set the values here to newItem

_model.AddQuestAnswModel.Add(newItem);

您首先要实例化您的列表

_model.AddQuestAnswModel = new List<AdditionalQuestionAnswerModel>();
不向列表中添加任何元素

在尝试按索引或更简单的方式访问列表之前添加元素:

foreach (var y in x.AdditionalQuestionAnswers)
{
    AdditionalQuestionAnswerModel newObj = new AdditionalQuestionAnswerModel
    {
         QuestionText = x.QuestionText;
         InstitutionId = x.InstitutionId;
         AdditionalQuestionId = x.Id;
         AnswerText = y.AnswerText;
         IsSelected = false;
    };

    _model.AddQuestAnswModel.Add(newObj);
}

您首先要实例化您的列表

_model.AddQuestAnswModel = new List<AdditionalQuestionAnswerModel>();
不向列表中添加任何元素

在尝试按索引或更简单的方式访问列表之前添加元素:

foreach (var y in x.AdditionalQuestionAnswers)
{
    AdditionalQuestionAnswerModel newObj = new AdditionalQuestionAnswerModel
    {
         QuestionText = x.QuestionText;
         InstitutionId = x.InstitutionId;
         AdditionalQuestionId = x.Id;
         AnswerText = y.AnswerText;
         IsSelected = false;
    };

    _model.AddQuestAnswModel.Add(newObj);
}

Ir表示您的
\u model.AddQuestAnswModel
中在指定位置没有任何项,并且从您的代码中,我看到
\u model.AddQuestAnswModel
仅使用
新列表()启动,因此它不包含项(除非您在构造函数中执行此操作)

您需要这样填写:

_model.AddQuestAnswModel.Add(item);

Ir表示您的
\u model.AddQuestAnswModel
中在指定位置没有任何项,并且从您的代码中,我看到
\u model.AddQuestAnswModel
仅使用
新列表()启动,因此它不包含项(除非您在构造函数中执行此操作)

您需要这样填写:

_model.AddQuestAnswModel.Add(item);