0

是否可以通过模型的外键单步访问视图中的另一个模型?我想将一种模型返回到我的视图中,但从另一个模型中获取数据。例如,在我看来:

@[ModelObject].[Field (ForeignKey)].[ForeignKey Field]

编辑:

到目前为止,您的反馈很有帮助,听起来视图模型可能是要走的路,但请允许我提供更多信息,以便您更好地提出建议。

我有一个x.Id,并且我想找到Y与之关联的所有对象x.Id——这个映射保存在一个表XYMap中,其中几个Y.Ids 映射到一个X.Id。这两个模型都在同一个实体中:

public class X
{
    [Key]
    public int xId {get; set;}
}

public class XYMap
{
    [Key, ForeignKey("Y")]
    public int yId { get; set; }

    [ForeignKey("X")]
    public int xId { get; set; }
}

public class Y
{
    [Key]
    public int yId { get; set; }
}

我试图做的是,给定一个x.Id被调用的someXid

var yIdList = db.XYMap.Where(item => item.xId == someXid).ToList()

我想获取所有 Y 对象,以便可以在视图中显示它们的数据。

4

1 回答 1

1

这是可能的,但不推荐。也许导航属性是通过延迟加载设置的,并且从视图调用 @Model.NavigationalField 会导致调用数据库。视图不应对此类调用负责。

我建议创建一个 ViewModel,它结合了两个实体所需的属性。

于 2013-02-11T19:21:03.623 回答