微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用 POST 值更新我的数据表 ASP.NET

如何解决如何使用 POST 值更新我的数据表 ASP.NET

我想更新我数据库中的值。为了确保我的脚本正常工作并发送值,我创建了一个 POST 方法来检查并且值即将到来。

img

我现在的问题是随着传入方法的值,如何在数据库中更新或保存我的值?

img2

控制器:

    [HttpPost]
    public JsonResult EditPost(Programa_Cor_Info_Status statusData)
    {
        Programa_Cor_Info_Status status = new Programa_Cor_Info_Status
        {
            ID_Info = statusData.ID_Info,Status = statusData.Status,Obs = statusData.Obs,};

        return Json(status,JsonRequestBehavior.AllowGet);
    }

我尝试在我的控制器上使用 db.savechanges 但无济于事。 有人可以帮我举个例子吗?

谢谢

------------更新-------------------- -------

[HttpPost]
    public ActionResult EditPost(Programa_Cor_Info_Status statusData,int ID_Status)
    {
        Programa_Cor_Info_Status status = new Programa_Cor_Info_Status
        {
            ID_Info = statusData.ID_Info,};

        var q = db.Programa_Cor_Info_Status.Where(m => m.ID_Info == ID_Status).FirstOrDefault();
        q.ID_Info = ID_Status;
        db.Entry(q).State = EntityState.Modified;
        db.SaveChanges();

        return Json(status,JsonRequestBehavior.AllowGet);
    }

img3

namespace Balu0._1.Models
{
using System;
using System.Collections.Generic;

public partial class Programa_Cor_Info_Status
 {
    public int ID_Info { get; set; }
    public int ID_Programa { get; set; }
    public int ID_Linha_Cor { get; set; }
    public string Status { get; set; }
    public string Obs { get; set; }
 }
}

解决方法

如果您还没有,请在您的视图中添加具有 ID_Info 值的隐藏模型字段。 将您的操作更改为:

    public ActionResult EditPost(Programa_Cor_Info_Status statusData)
    {
            var existItem = db.Programa_Cor_Info_Status.Find(statusData.ID_Info);

// or if you dont have a  proper primary key you can try
 var existItem = db.Programa_Cor_Info_Status
                .Where( i=> i.ID_Info== statusData.ID_Info).FirstOrDefault();

                if (existItem != null)
                {
                    
                db.Entry(existItem).CurrentValues.SetValues(statusData);
                var result = db.SaveChanges(); // if result==0 then error
               } else ...error

        return Json(statusData,JsonRequestBehavior.AllowGet);
    }
,

感谢我已经得到的帮助!!!

db.Entry(status).State = EntityState.Modified;
        db.SaveChanges();
        return Json(status,JsonRequestBehavior.AllowGet);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。