Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.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
Asp.net mvc 3 如何在单击按钮时更新数据库表?_Asp.net Mvc 3_Jquery_Ado.net - Fatal编程技术网

Asp.net mvc 3 如何在单击按钮时更新数据库表?

Asp.net mvc 3 如何在单击按钮时更新数据库表?,asp.net-mvc-3,jquery,ado.net,Asp.net Mvc 3,Jquery,Ado.net,我正在使用ADO.Net连接处理MVC3,然后使用jQuery更新div 这是我的密码 控制器 public ActionResult GetData() { return this.Json(_db.MYMOVIELISTs, JsonRequestBehavior.AllowGet); } public void Insert(string Id) { var movieToInsert = new MYMOVIELIST { Title = "Ben", Director = "

我正在使用ADO.Net连接处理MVC3,然后使用jQuery更新div

这是我的密码

控制器

public ActionResult GetData()
{
 return this.Json(_db.MYMOVIELISTs, JsonRequestBehavior.AllowGet);
}
public void Insert(string Id)
{
    var movieToInsert = new MYMOVIELIST { Title = "Ben", Director = "LEMe", ID = Id };
    // Save new movie to DB
    _db.AddToMYMOVIELISTs(movieToInsert);
    _db.SaveChanges();
}
客户端

function insertCallback(result) {
    readData();
}
function readData() {
    info.empty();
    $.ajax({
        type: "GET",
        url: 'Home/GetData',
        async: false,
        success: function (data) {
            for (var i = 0; i < data.length; i++) {
                var panel = $("<div class='panel' ></div>")
                var d = data[i];
                panel.append("ID: " + d.ID + "</br>");
                panel.append("Title: " + d.Title + "</br>");
                panel.append("Director: " + d.Director + "</br>");
                panel.append("<hr>");
                panel.data("info", d);
                panel.appendTo(info);
            }
        }
    });
}
$("#btnAdd").click(function () {
    $.post("Home/Insert", $("form").serialize(), insertCallback);
});
函数insertCallback(结果){
readData();
}
函数readData(){
info.empty();
$.ajax({
键入:“获取”,
url:“主页/GetData”,
async:false,
成功:功能(数据){
对于(变量i=0;i”;
面板。追加(“标题:+d.标题+”
”; 面板。追加(“董事:+d.董事+”
”; 面板。追加(“
”); 小组数据(“信息”,d); 面板。附录(信息); } } }); } $(“#btnAdd”)。单击(函数(){ $.post(“主/插入”,“形式”).serialize(),insertCallback); });

这是工作正常,我的问题是我想更新数据库表在“保存”按钮点击。我试图调用
\u db.SaveChanges()在保存按钮中单击而不是插入,这不是将
movieToInsert
添加到表中,这里我想知道的是以后如何保存数据库,这里有任何错误,或者是否有任何最佳的DB连接方法

您正在序列化一个表单,因此最终您可能希望看到下面。。。将序列化表单绑定到电影模型/实体:

[AcceptVerbs("POST")]
public void Insert(MovieEntity movie)

至于数据库实践,我建议阅读与ASP.NET MVC相关的存储库模式和依赖项注入。

不使用“[AcceptVerbs(“POST”)]”就可以了。这不是我想要的答案。我问了一个关于表中记录的保存的问题,对吗?谢谢我编辑了我的答案。。。至于这个问题,您使用的是linq2sql,一个ORM(如entity framework,nHibernate)应用程序数据访问块,还是您编写的纯ADO.NET自定义数据库类?我使用的是ADO.NET自定义数据库类。