2

在我的带有 ef 代码的 mvc 3 应用程序中,我首先有一个带有 1 个表的数据库

列字段是

ID

TIME1 双倍 TIME2 双倍 TIME3 双倍

我需要 time3 是 time1 和 time2 相乘的结果......我用 viewbag 做到了

Viewbag.Text = db.persons.Sum(o => o.Time1 * o.Time2);

但不幸的是,我无法将字段 Time3 与结果相关联……这是我的控制器和视图

        public ActionResult Create()
    {
        return View();
    } 

    [HttpPost]
    public ActionResult Create(Person person)
    {
        person.Tempo3 = db.persons.Sum(o => o.Tempo1 * o.Tempo2);
        if (ModelState.IsValid)
        {

            db.persons.Add(person);
            db.SaveChanges();
            return RedirectToAction("Index");  
        }

        return View(person);
    }

}

@using (Html.BeginForm()) {@Html.EditorFor(model => model.Tempo1) @Html.EditorFor(model => model.Tempo2) @Html.HiddenFor(model => model.Tempo3)

使用 HiddenFor 计算不起作用...如何使用 linq 查询?谢谢

4

1 回答 1

0

尝试这样的事情:

[HttpPost]
public ActionResult Create(Person person)
{

    if (ModelState.IsValid)
    {
        newPerson = new db.persons {Tempo1 = person.Tempo1, Tempo2 = person.Tempo2};
        newPerson.Tempo3 = peson.Tempo1 * person.Tempo2; 

        db.persons.Add(newPerson);
        db.SaveChanges();
        return RedirectToAction("Index");  
    }

    return View(person);
}
于 2012-02-14T19:04:42.233 回答