gpt4 book ai didi

asp.net - 在asp.net中访问EF的继承实体

转载 作者:行者123 更新时间:2023-12-02 14:14:26 24 4
gpt4 key购买 nike

我正在开始使用 EF (6.0),有一个简单的问题:

我使用模型优先方法来设计一个实体模型,其中包括名为“Component”的实体。然后,我创建了几个继承自该基本类型的实体,例如“VideoCard”。

现在,在我的 ASP.net 代码中,我可以访问 context.Components,但我似乎无法直接返回 context.VideoCards。因此,如果我只想返回视频卡列表,我应该使用类似的东西

 context.Components.OfType<VideoCard>();

(尝试过这个似乎有效),或者关于这个主题还有什么我应该知道的吗?

编辑:我意识到这也有效:

context.Components.Where(x => x is VideoCard);

其中一种方法比另一种更好吗?

预先感谢您的回复。

最佳答案

您可以在上下文中公开 VideoCards 属性,并通过它仅获取 VideoCard 实体。

public class MyContext
{
public DbSet<Component> Components { get; set; }
public DbSet<VideoCard> VideoCards { get; set; }
}

并像下面一样使用它

var allVideoCards = context.VideoCards.ToArray();

关于asp.net - 在asp.net中访问EF的继承实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20830580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com