public ActionResult Create(FormCollection collection, FormCollection formValue)
{
try
{
Project project = new Project();
TryUpdateModel(project, _updateableFields);
var devices = collection["devices"];
string[] arr1 = ((string)devices).Split(',');
int[] arr2 = Array.ConvertAll(arr1, s => int.Parse(s));
project.User = SessionVariables.AuthenticatedUser;
var time = formValue["Date"];
project.Date = time;
project.SaveAndFlush();
foreach (int i in arr2)
{
Device d = Device.Find(i);
d.Projects.Add(project);
d.SaveAndFlush();
}
return RedirectToAction("Index");
}
catch (Exception e)
{
return View(e);
}
}
Quiero envolver el foreach en una sentencia if que comprueba siComprobar si la colección está vacía o no
var devices = collection["devices"];
está vacía o no. Si está vacío, no se debe ejecutar para cada uno. Para el registro, la colección ["dispositivos"] es una colección de valores de casilla de verificación de un formulario.
Sí, lo siento, soy un idiota. Leí mal el error que tuve al intentar una declaración if. No fue causado por el forearca que intentaba recorrer una colección vacía. poner la conversión a la matriz int dentro de la instrucción if lo resuelve. – Prd