[英]How to pass this value in c# ASP.NET?
我正在尝试将变量的值传递给对象。
我想将传递到MisArticulos.codigo
的cod
值传递给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.