ASP.NETRazor页面Appdbcontext返回空值的外键对象。
创始人
2024-11-12 06:30:11
0

在Appdbcontext中配置外键关系,并从数据库中加载关联对象。

以例子为例,假设有两个实体类:Order和Customer。Order类有一个CustomerId外键属性,指向Customer类的主键Id。在Appdbcontext中,我们可以添加以下配置代码:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity()
        .HasOne(o => o.Customer)
        .WithMany(c => c.Orders)
        .HasForeignKey(o => o.CustomerId);
}

这里我们定义Order类为从属实体,Customer类为主实体,并使用HasOne和WithMany方法建立一对多的关系。HasForeignKey方法指定外键属性名称。

当从数据库中查询Order对象时,包含一个CustomerId属性,但不包含Customer对象。为了加载关联的Customer对象,可以使用Include方法:

var order = _context.Orders
    .Include(o => o.Customer)
    .FirstOrDefault(o => o.OrderId == orderId);

在这里,我们使用Include方法指定要加载Customer对象。Include方法支持链式调用,可以加载多个对象。

以上示例中使用的是Entity Framework Core,但是类似的配置和加载方式适用于任何ORM框架和数据访问方法。

相关内容

热门资讯

黑科技免费!智星德州辅助器,p... 黑科技免费!智星德州辅助器,pokerwoeld安卓下载,原本存在有挂(2021已更新)-哔哩哔哩智...
黑科技游戏!红龙扑克app辅助... 黑科技游戏!红龙扑克app辅助器,智星德州辅助,总是是真的有挂(2020已更新)-哔哩哔哩1、很好的...
黑科技辅助!红龙扑克辅助器能用... 黑科技辅助!红龙扑克辅助器能用吗,德扑之星辅牌器靠谱吗,竟然真的是有挂(2025已更新)-哔哩哔哩红...
黑科技安装!苹果菠萝德州辅助神... 黑科技安装!苹果菠萝德州辅助神器,德扑之星窥牌,果然真的有挂(2022已更新)-哔哩哔哩;科技安装教...
黑科技教程!红龙扑克透牌,来玩... 黑科技教程!红龙扑克透牌,来玩德州扑克约局神器,确实真的有挂(2026已更新)-哔哩哔哩红龙扑克透牌...
黑科技最新!红龙扑克发牌有问题... 红龙扑克发牌有问题赢率提升策略‌;黑科技最新!红龙扑克发牌有问题,聚星扑克进去后怎么操作,一贯真的是...
黑科技插件!红龙扑克真的好坑,... 黑科技插件!红龙扑克真的好坑,德扑之星怎么在电脑上玩,起初存在有挂(2022已更新)-哔哩哔哩准备好...
黑科技ai代打!红龙扑克辅助,... 黑科技ai代打!红龙扑克辅助,聚星扑克有没有挂,固有真的有挂(2026已更新)-哔哩哔哩1、许多玩家...
黑科技科技!红龙扑克透牌辅助器... 黑科技科技!红龙扑克透牌辅助器,德扑ai智能工具,原本有挂(2025已更新)-哔哩哔哩;实战中需综合...
辅助黑科技!红龙扑克真假,德扑... 辅助黑科技!红龙扑克真假,德扑ai助手软件,本然是真的有挂(2024已更新)-哔哩哔哩准备好在红龙扑...