繁体   English   中英

如何在c#ASP.NET中传递此值?

[英]How to pass this value in c# ASP.NET?

我正在尝试将变量的值传递给对象。
我想将传递到MisArticulos.codigocod值传递给MisArticulos.codigo

[HttpPost]
public ActionResult AgregarArticulos(ArticuloModel articulo)
{
        ArticulosSele MisArticulos = new ArticulosSele();
        List<ArticulosSele> ListaArticulosFactura = new 
        List<ArticulosSele>();
        dbModels dbArtFact = new dbModels();
        ListaArticulosFactura = dbArtFact.ArticulosSele.ToList();

        var Seleccionados = articulo.Articulos.Where(x => x.IsChecked == 
            true).ToList<Articulos>();
        int tamaño = Seleccionados.Count();//Obtenemos el tamaño de la lista
        for (int i= 0;  i< tamaño; i++) {
            //MisArticulos.foliofactura = idfact;
            int cod= (int)Seleccionados[i].codigo;
            //"MisArticulos.codigo" gives me 0, but "cod" has a value.
            MisArticulos.codigo = cod; 
            MisArticulos.nombre = Seleccionados[i].nombre;//the same problem here
        }
}

问题出在您的for循环中。 MisArticulos是单个对象,因此MisArticulos.codigo = cod; 重复写入先前的值,直到for循环结束为止,其中cod可能为0。

您可能想拥有一个清单,例如

List<ArticulosSele> MisArticulos = new List<ArticulosSele>();

然后将其填充到您的for循环中,例如

for (int i = 0;  i < tamaño; i++) {
    MisArticulos[i].codigo = Seleccionados[i].codigo;    
    MisArticulos[i].nombre = Seleccionados[i].nombre;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM