所以,我这里有这个类:
public class Platillo
{
public virtual int ID { get; set; }
public virtual String NombrePlatillo { get; set; }
public virtual int idRestaurante { get; set; }
public virtual String DescripcionPlatillo { get; set; }
public virtual bool esAprobado { get; set; }
public virtual bool esDisponible { get; set; }
public virtual double precio { get; set; }
public virtual DateTime vigenciaPlatillo { get; set; }
public virtual List<ListaIngredientes> listadeIngredientes { get; set;}
}
我创建了一个强类型的 PlatilloController 来执行所有基本的 CRUD 操作。问题是,视图呈现除列表之外的所有内容。我的想法是创建一个列表,允许添加新成分(成分)和菜肴(Platillo)上每个人的份量(Porciones)。
public class ListaIngredientes
{
public virtual int ID { get; set; }
public virtual Ingrediente ingrediente { get; set; }
public virtual int porciones { get; set; }
}
public class Ingrediente
{
public virtual int ID { get; set; }
public virtual String NombreIngrediente { get; set; }
//...
}
所以,我的想法是实现一个PartialView,在菜肴上列出每种成分,并允许添加新成分。我究竟该怎么做?而且,由于我计划在同一页面上创建和更新新成分,因此我确信我应该考虑AJAX。我究竟如何使用 Ajax 创建和显示 ListaIngrediente 的列表条目?
只是一个使用部分视图页面的示例,请尝试以下操作:
@model <Project>.Models.Platillo
@foreach(ListaIngredientes ing in listadeIngredientes)
{
<div>@ing.ID</div>
<div>@ing.Ingrediente.NombreIngrediente</div>
}
我对你的设计有点困惑,你为什么要使用列表公共
virtual List<ListaIngredientes> listadeIngredientes { get; set;}
我会开始,但首先在你的ListaIngIngredientsientes中创建一个Platillo外键,它将与PlatilloID之类的Platillo匹配,所以现在你将有一个与Platilloios匹配的ListaIngIngrecientes列表。
然后确保您可以创建一个 ajax 部分视图,您可以在其中添加成分,然后在另一个词中创建单独的视图中将特定的 ingridient 与您的 Platilloio 匹配,分别创建 ingridiets 和 Platilloio,然后在另一个视图上将 Ingridients 表中的 ingridients 添加到 Pelatio。