Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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# 将值添加到数据库中2-7次_C#_Sql_Entity Framework_Asp.net Mvc 4 - Fatal编程技术网

C# 将值添加到数据库中2-7次

C# 将值添加到数据库中2-7次,c#,sql,entity-framework,asp.net-mvc-4,C#,Sql,Entity Framework,Asp.net Mvc 4,因此,我尝试向我正在使用的数据库表中添加一行新信息,目前它有时会向数据库中添加2-5-7行相同的信息,但Id不同 我试着调试整个过程,但我不明白为什么ActionResult会运行几次,并添加相同的信息多达7次 当我单击add按钮时,它开始加载下一页的数据,并将这些值添加到数据库中。问题是,大约5-6秒后,单击“添加”按钮后,它会再次返回控制器并再次执行相同的过程,从而导致随机数目的2-5-7行添加了相同的值,但id不同 我使用一个带有编辑器字段和下拉列表的简单视图来选择国家,并将其发布到Act

因此,我尝试向我正在使用的数据库表中添加一行新信息,目前它有时会向数据库中添加2-5-7行相同的信息,但Id不同

我试着调试整个过程,但我不明白为什么ActionResult会运行几次,并添加相同的信息多达7次

当我单击add按钮时,它开始加载下一页的数据,并将这些值添加到数据库中。问题是,大约5-6秒后,单击“添加”按钮后,它会再次返回控制器并再次执行相同的过程,从而导致随机数目的2-5-7行添加了相同的值,但id不同

我使用一个带有编辑器字段和下拉列表的简单视图来选择国家,并将其发布到ActionResult,将值添加到数据库中

操作结果如下所示:

[HttpPost]
    public ActionResult AddNewsdesk(AddNewsdeskViewModel addNewsdesk)
    {
        if (ModelState.IsValid)
        {
            var newsdesk = Mapper.Map<AddNewsdeskViewModel, Newsdesk>(addNewsdesk);
            newsdesk.Country = _databaseContext.Countries.Single(c => c.Name.Equals(addNewsdesk.Country));
            newsdesk.Id = new Guid();

            _databaseContext.Add(newsdesk);
            _databaseContext.SaveChanges();
            return RedirectToAction("Index", "Newsdesk");
        }
        return RedirectToAction("Index", "Home");
    }
[HttpPost]
公共操作结果AddNewsdesk(AddNewsdeskViewModel AddNewsdesk)
{
if(ModelState.IsValid)
{
var newsdesk=Mapper.Map(addNewsdesk);
newsdesk.Country=_databaseContext.Countries.Single(c=>c.Name.Equals(addNewsdesk.Country));
newsdesk.Id=新Guid();
_databaseContext.Add(新闻台);
_databaseContext.SaveChanges();
返回重定向操作(“索引”、“新闻台”);
}
返回重定向到操作(“索引”、“主页”);
}

如果您的
AddNewsdesk()
方法多次被调用(“问题是在单击add按钮5-6秒后,它会再次返回控制器”),那么问题出在您,而不是方法本身。那个页面上有JavaScript吗?为什么实体框架会将现有对象重新插入到我的数据库中?msdn.microsoft.com/en-us/magazine/dn166926.aspxSo,可以肯定的是,
Newsdesk
项目是重复插入的,而不是国家?我使用一些javascript来防止在表单中没有填写信息时单击按钮。我试图注释掉它,但它仍然将多个值输入到数据库中。格塔诺尔:没错科林:我会查一查的!