ASP.NET MVC插入查询重复数据

时间:2016-11-24 08:28:01

标签: jquery asp.net-mvc oracle

我正在以某种方式通过MVC ACTION向我的oracle数据库发送插入查询,插入方法被调用两次并记录两次相同的数据...

此外,使用运行select查询的相同结构会两次返回相同的结果。

我错过了什么?

查看:

@Ajax.ActionLink("Click", "reg",
 new AjaxOptions
{       
    HttpMethod = "POST"
})

控制器:

 [HttpPost]
    public ActionResult reg()
    {
        KullaniciYetkiDAL.Add();

        return View();

    }

DAL:

 public static void Add()
    {
        string Query = "insert into USER (id,PROGRAM_ID) values ('200',1)";
        Database.EXECUTE(Query, null);
        Database.CloseConnection();
    }

DBAcsess:

 public static int EXECUTE(String Query, List<OracleParameter> Params)
    {
        Command = new OracleCommand(Query, GetConnection());
        if (Params != null)
        {
            foreach (OracleParameter p in Params)
            {
                Command.Parameters.Add(p);
            }

        }
        return Command.ExecuteNonQuery();
    }

2 个答案:

答案 0 :(得分:0)

从您的代码中我无法理解为什么它的请求两次,但我认为您可以检查您的视图,尝试更改使用原生 Jquery 的方法来请求操作

答案 1 :(得分:0)

您应该更改指向Html.ActionLink的链接,因为Ajax存储请求而不是Ajax,您必须使用Html.ActionLink:

@Html.ActionLink(TestAction.Title,
    new { controller = "TestController", action = "TestAction",
          id = TestAction.ID })