Cada vez que agrego una nueva aplicación, crea una nueva AppCategory. Estoy seriamente atornillar esto de alguna maneraASP.NET Editor DropdownList
código de marco primera entidad de objetos
public class AppCategory
{
public int ID { get; set; }
public string Name { get; set; }
public ICollection<App> apps { get; set; }
}
public class App
{
public int ID { get; set; }
public string Name { get; set; }
public AppCategory Category { get; set; }
}
Editor de plantillas (me encantaría acaba de hacer tan sólo una tecla EditorTemplate Exteriores)
@inherits System.Web.Mvc.WebViewPage
@Html.DropDownList("Category", LIG2010RedesignMVC3.Models.Repo.GetAppCategoriesSelect())
y por supuesto el repositorio
public static IEnumerable<SelectListItem> GetAppCategoriesSelect()
{
return (from p in GetAppCategories()
select new SelectListItem
{
Text = p.Name,
Value = p.ID.ToString(),
});
}
public static ICollection<AppCategory> GetAppCategories()
{
var context = new LIGDataContext();
return context.AppCategories.ToList();
}
Cada vez que agrego una nueva aplicación Crea una nueva AppC ategoría Estoy seriamente atornillar esto de alguna manera
La adición de más información de depuración
@inherits System.Web.Mvc.WebViewPage
@Html.DropDownList("", LIG2010RedesignMVC3.Models.Repo.GetAppCategoriesSelect())
me da un mensaje de validación en el puesto
Parameters application/x-www-form-urlencoded
Category 1
Name 8
de error de validación El valor '1' es inválido.
Esto tiene sentido porque Categoría debe ser un objeto, no un número entero.
Código controlador como pedido bastante seguro de que este no es el problema, ya que venía de MVCScaffold
[HttpPost]
public ActionResult Create(App d)
{
if (ModelState.IsValid)
{
context.Apps.Add(d);
context.SaveChanges();
return RedirectToAction("Index");
}
return View();
}
no tengo idea de lo que su pregunta es o cómo ha llegado hasta un upvote para el artículo. ¿Has recorrido el programa en un depurador para restringir dónde se produce el problema? –
desde el controlador [HttpPost] public ActionResult Create (Aplicación d) Obtengo d.Category es nulo (por eso está creando uno nuevo) pero no sé por qué obtengo d.Category es nulo – MarkKGreenway
Publique su código de controlador por favor. Estoy bastante seguro de que el problema está ahí. – jfar