首页 > 解决方案 > 如何将更改保存到数据库中

问题描述

我有以下代码来编辑产品,创建编辑表单并连接到工作正常的数据库,但我需要帮助将更改保存到数据库中。

产品服务

namespace PDM.Core.App.Common.Product
{
    public interface IProductService
    {        Task<IList<ProductDTO>> GetProducts();

    }
}

//控制器

public IProductService ProductService { get; }

     public ProductController(IProductService productService)
    {
        ProductService = productService;
    }

public async Task<IActionResult> Edit(int? id)

    {
        if (id == null)
        {
            return NotFound();
        }

        var ProductList = (await ProductService.GetProducts()).ToList();

        var Product = ProductList.FirstOrDefault(a => a.ID == id);

        if (Product == null)
        {
            return NotFound();
        }

        return View(Product);
    }

编辑操作如下所示

    public async Task<IActionResult> Edit(ProductEditModel editModel)
    {
        if (id == null)
        {
            return NotFound();
        }
        var ProductList = (await ProductService.GetProducts()).ToList();
        var Product = ProductList.FirstOrDefault(a => a.ID == id);
        if (Product == null)
        {
            return NotFound();
        }
        Product.Code = editModel.Code;
        ProductService.EditProduct(Product);

        return View(Product);
    }

我有编辑表单视图

<form asp-action="Edit" class="form-horizontal">
   <input type="hidden" asp-for="Id" value="@Model.Id" class="form-control" />
    <input type="text" asp-for="Code" value="@Model.Code" class="form-control" />
   <button class="btn btn-success Product-edit-button" role="button">Save</button>
</form>

编辑产品型号

public class ProductEditModel {
public int Id {get;set;}
public string code{get; set;}
}
  1. 如何使用参数在 productservice 中创建 EditProduct?
  2. 我该如何解决以使其正常工作?

谢谢

标签: asp.netasp.net-mvcasp.net-core

解决方案


推荐阅读