所以,我在这里上课:
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操作。问题是,View会渲染除List之外的所有内容。 我的想法是创建一个List,允许添加新成分(Ingredientes)和每个菜肴(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的列表条目?
答案 0 :(得分:1)
使用部分视图页面的示例,请尝试以下操作:
@model <Project>.Models.Platillo
@foreach(ListaIngredientes ing in listadeIngredientes)
{
<div>@ing.ID</div>
<div>@ing.Ingrediente.NombreIngrediente</div>
}
答案 1 :(得分:0)
我对你的设计感到有点困惑,为什么你会使用公开名单
virtual List<ListaIngredientes> listadeIngredientes { get; set;}
我会开始,但首先在ListaIngredientes中创建一个与Platillo相匹配的Platillo外键,如PlatilloID,所以现在你将拥有一个与Platilloios及其ingridients相匹配的ListaIngredientes列表。
然后确定你可以创建一个ajax局部视图,你可以在其中添加Ingrediente,然后在另一个单词的单独视图中将特定的ingridients与Platilloio匹配,分别创建ingridiets和Platilloio,然后在另一个视图中添加来自ingridients的ingridiets您的Ingridients表到Pelatio。