实体框架:当我尝试更新值时,我得到一个“未设置为对象实例的引用”

时间:2014-05-29 17:56:46

标签: asp.net asp.net-mvc entity nullreferenceexception

我有一个使用自定义ViewModel的编辑页面。当我在相应的视图中更改某些内容时,我在编辑后期功能中收到了该模型。到目前为止很好......

这是我的动作功能:

[HttpPost]
public ActionResult Edit(FeuerwehrPersonViewModel model)
{
    if (ModelState.IsValid)
    {
        FeuerwehrPerson fPersonToUpdate = _fservice.GetAllValues(model.FeuerwehrPersonId);


        fPersonToUpdate.Anrede = model.Anrede;
        fPersonToUpdate.FeuerwehrPersonId = model.FeuerwehrPersonId;
        fPersonToUpdate.Geburtstag = model.Geburtstag;
        fPersonToUpdate.Nachname = model.Nachname;
        fPersonToUpdate.Vorname = model.Vorname;
        fPersonToUpdate.Strasse = model.Strasse;
        fPersonToUpdate.Plz = model.Plz;
        fPersonToUpdate.Ort = model.Ort;
        Gemeinde newGemeindeOfFperson = _gemService.Details(model.SelectedGemeindeId);


        fPersonToUpdate.Notenspiegel.Seminar_A = model.Notenspiegel.SeminarA;
        fPersonToUpdate.Notenspiegel.Seminar_B = model.Notenspiegel.SeminarB;
        fPersonToUpdate.Notenspiegel.Seminar_C = model.Notenspiegel.SeminarC;
        fPersonToUpdate.Notenspiegel.Seminar_D = model.Notenspiegel.SeminarD;
        fPersonToUpdate.Notenspiegel.Seminar_E = model.Notenspiegel.SeminarE;
        fPersonToUpdate.Notenspiegel.Seminar_F = model.Notenspiegel.SeminarF;


        fPersonToUpdate.Gemeinde.GemeindeId = newGemeindeOfFperson.GemeindeId;
        fPersonToUpdate.Gemeinde.Name = newGemeindeOfFperson.Name;
        fPersonToUpdate.Gemeinde.Ort = newGemeindeOfFperson.Ort;
        fPersonToUpdate.Gemeinde.Plz = newGemeindeOfFperson.Plz;
        fPersonToUpdate.Gemeinde.Strasse = newGemeindeOfFperson.Strasse;
        fPersonToUpdate.Gemeinde.Tel = newGemeindeOfFperson.Tel;
        fPersonToUpdate.GemeindeId = newGemeindeOfFperson.GemeindeId;


        FeuerwehrPerson UpdateFperson=new FeuerwehrPerson();


        _service.UpdateFeuerwehrPerson(fPersonToUpdate);

    }

这是下一个名为的函数:

public void UpdateFeuerwehrPerson(FeuerwehrPerson person)
{
    _repo.UpdateByEntity(person);
}

当我尝试执行函数_repo.UpdateByEntity(person)时。我收到一个运行时异常“对象引用未设置为对象的实例”。我不明白为什么。我正在检查www以找到类似的问题,但我找不到。

public void UpdateByEntity(FeuerwehrPerson entity)
{
    _db.Entry(entity).State = EntityState.Modified;
}

0 个答案:

没有答案