【问题标题】:C# ASP.NET MVC ERROR IN RETURNING VALUES IN VIEWC# ASP.NET MVC 错误在返回值中查看
【发布时间】:2020-06-21 01:51:16
【问题描述】:

我正在处理一个 ASP.NET MVC 项目,我想返回视图 GuardarRegistro 三个控制器值,这些值是 IdSucursalIdProductoCantidad,但我收到一条错误消息

CS1501 C # No overload for method 'View' takes 4 arguments

这是出现错误的控制器的代码

public ActionResult Nuevo(decimal IdSucursal = 0, decimal IdProducto = 0, decimal Cantidad = 0)
{
    new RegistroAlmacenAdmin().GuardarRegistro(IdSucursal, IdProducto, Cantidad);
    ViewBag.mensaje = "registro de almacen guardado";
    return View("GuardarRegistro", IdSucursal, IdProducto, Cantidad);//CS1501 error in this line in word view
}

我正计划在ActionResult 中创建一个新对象,但我不知道如何正确操作

【问题讨论】:

  • View 方法接受视图名称和模型类对象。您需要学习如何创建类的对象。然后将该对象作为第二个参数传递给视图方法。可以通过var obj = new <<Class name>>(); 创建类对象。更多可以阅读herehere
  • 正如 arleady 所说,您必须将 IdSucursal、IdProducto、Cantidad 包装在一个类 (viewModel) 中并将其传递给 View(...)

标签: c# asp.net-mvc oop actionresult


【解决方案1】:

晚安 非常感谢cmets和帮助我找到答案的文章,我理解更好oop,答案代码如下

型号

public partial class RegistroAlmacen
{
    public decimal IdRegistro { get; set; }
    public decimal IdSucursal { get; set; }
    public decimal IdProducto { get; set; }
    public decimal Cantidad { get; set; }

    public virtual Producto Producto { get; set; }
    public virtual Sucursal Sucursal { get; set; }
}

控制器

public ActionResult Nuevo(decimal IdSucursal=0, decimal IdProducto=0, decimal Cantidad=0)
    {
        RegistroAlmacen objeto = new RegistroAlmacen
        {
            IdSucursal=IdSucursal,
            IdProducto = IdProducto,
            Cantidad=Cantidad
        };
        new RegistroAlmacenAdmin().GuardarRegistro(IdSucursal, IdProducto, Cantidad);
        ViewBag.mensaje = "registro de almacen guardado";
        return View("GuardarRegistro", objeto);
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-05
    • 2011-08-15
    • 1970-01-01
    相关资源
    最近更新 更多