Asp.net C#Mvc3添加数据库作为输入值

本文关键字:输入 数据库 net C#Mvc3 添加 Asp | 更新日期: 2023-09-27 17:59:33

在我的项目中,我的数据库中有四个变量。FileNumber、Number、LastFileNumber和Company。

我想在我的数据库中创建数字值。就像如果FileNumber是5,Number是3,LastFileNumber将是5 + 3 - 1 = 7,它应该像一样保存到数据库中

文件编号5编号3最后文件编号7

文件编号6编号3最后文件编号7

文件编号7编号3最后文件编号7

我的代码当前为:

[HttpPost]
public ActionResult Create(Eur1 eur1)
{
    int filenum = Convert.ToInt32(eur1.FileNumber);
    int lastfilenum = Convert.ToInt32(eur1.LastFileNumber);
    int num = Convert.ToInt32(eur1.Number);
    if (ModelState.IsValid)
    {
        for(int i=0;i<=num;i++)
        {
            db.Eur1.AddObject(eur1);
            db.SaveChanges();
            lastfilenum = lastfilenum + 1;           
        }
        return RedirectToAction("Create");  
    }
    return RedirectToAction("Create");
}

当然是

ObjectStateManager中已存在具有相同键的对象。现有对象处于"未更改"状态。只有处于已添加状态的对象才能再次添加到ObjectStateManager中。

我该怎么解决这个问题?

Asp.net C#Mvc3添加数据库作为输入值

查看您的for循环-您一次又一次地添加相同的eur1对象。另一方面,lastfilenum = lastfilenum + 1;的赋值没有任何意义,因为你对lastfilenum'什么都不做。

重新检查你的逻辑。