-1
我有两个实体之间的一对多关系,扑灭和战斗卡(战斗属于战斗卡,战斗卡可以有许多战斗)。战斗实体与一个名为Fighters的实体有多对多的关系。我想要做的是在FightCard视图中显示Fight实体的细节(这很简单,我可以做到这一点),但是我也显示了与Fight实体具有一对多关系的Fighters的细节。处理关系中的数据
这怎么办?我希望这是有道理的。
我有两个实体之间的一对多关系,扑灭和战斗卡(战斗属于战斗卡,战斗卡可以有许多战斗)。战斗实体与一个名为Fighters的实体有多对多的关系。我想要做的是在FightCard视图中显示Fight实体的细节(这很简单,我可以做到这一点),但是我也显示了与Fight实体具有一对多关系的Fighters的细节。处理关系中的数据
这怎么办?我希望这是有道理的。
你没有在代码中包含太多内容,所以这里有一个基本的例子来概述你想要做的事情。
所以,让我们说你有一些实体类是这样的:
public class FightCard
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<Fight> Fights { get; set; }
}
public class Fight
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public FightCard FightCard { get; set; }
public virtual ICollection<Fighter> Fighters { get; set; }
}
public class Fighter
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<Fight> Fights { get; set; }
}
有这样的控制器与Details
动作:
public class FightCardsController : Controller
{
private MyContext context = new MyContext();
public ActionResult Details(int id)
{
FightCard fightCard = context.FightCards.Find(id);
if (fightCard == null)
{
return this.HttpNotFound();
}
return this.View(fightCard);
}
}
然后,你可以做一个FightCards\Details.cshtml
视图像以下:
@model MyProject.Models.FightCard
<h1>Fight Card: @Model.Name</h1>
<ul>
@foreach (var fight in Model.Fights)
{
<li>
Fight: @fight.Name
<ul>
@foreach (var fighter in fight.Fighters)
{
<li>Fighter: @fighter.Name</li>
}
</ul>
</li>
}
</ul>
非常感谢你,我删除了我有过的代码,但代码非常相似,但语法错误。非常感谢。 –
我编辑了你的标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 –
你到目前为止尝试过什么?请发布代码示例,以便我们可以看到您的位置并指出您的方向正确。 –