Nhibernate 一对多,多对一配置

简介: 先来分析下问题,这里有两张表:Users(用户表) U和PersonalDynamic(用户动态表) PD,其中PD表的UserId对应U表的Id 如图: 现在映射这两张表: 如图: User.

先来分析下问题,这里有两张表:Users(用户表) U和PersonalDynamic(用户动态表) PD,其中PD表的UserId对应U表的Id

如图:

现在映射这两张表:

如图:

User.hbm.xml

PersonalDynamic.hbm.xml

现在新建两个实体类:

PersonalDynamic.cs

User.cs

这样就能获取到相应的数据,如图:

总结:

虽然U表和PD表是一对多关系,但是在Nhibernate中PD表<many-to-one>要引用U表的UserId建立外建关系才能获取User数据成User类,

同理,U表要映射<one-to-many>要引用PD表的UserId建立外建关系,才能获取PD列表数据成PersonalDymic数据

 

目录
相关文章
|
4月前
|
存储 数据采集 JSON
供应链管理优化:通过京东API实现库存自动预警
通过京东API实现库存自动预警,可实时监控库存变化,结合销售、采购数据动态设置预警规则,优化库存周转效率,降低缺货风险与仓储成本,提升供应链管理自动化水平。
|
人工智能
新手必看,写歌词的技巧和方法新分享,妙笔生词AI智能写歌词软件
对于新手,写歌词不再难。本文分享了写歌词的实用技巧,如积累生活素材、明确主题、合理安排主副歌、简洁有力的语言表达等。推荐使用“妙笔生词智能写歌词软件”,其AI功能可助你灵感不断,轻松创作。
|
8月前
|
数据可视化 测试技术 API
前后端分离开发:如何高效调试API?有工具 vs 无工具全解析
在前后端分离的开发模式中,API 调试的效率直接影响项目的质量和交付速度。通过本文的对比分析,我们可以看到无工具调试模式虽具备灵活性和代码复用能力,但在操作便利性和团队协作上稍显不足。而传统的外部调试工具带来了可视化、高效协作与扩展性,却可能存在工具切换带来的开发链路断层问题。Apipost-Hepler 融合了两者的优势,让开发者无需离开熟悉的 IDEA 环境,就能享受可视化调试工具的强大功能。
270 5
|
算法
数据结构之旅行商问题(深度优先搜索)
旅行商问题(TSP)是寻找访问多个城市并返回起点的最短路径的经典问题。本文介绍了TSP的背景、应用、复杂性和解决方法,重点讲解了使用深度优先搜索(DFS)算法求解TSP的过程。通过邻接矩阵表示城市间的距离,利用访问数组和栈结构辅助DFS遍历,最终找到最优路径。此方法虽然能保证找到最优解,但时间复杂度高,适用于城市数量较少的情况。示例代码展示了算法的具体实现及结果分析。
390 2
|
SQL
SQL使用with构建临时表
SQL使用with构建临时表
459 8
|
存储 C语言 Python
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。
1043 4
|
编解码 人工智能 数据可视化
imagen: 具有深度语言理解的逼真的文本到图像扩散模型
imagen: 具有深度语言理解的逼真的文本到图像扩散模型
|
存储 Java 分布式数据库
HBase构建图片视频数据的统一存储检索
HBase构建图片视频数据的统一存储检索
|
存储 前端开发 JavaScript
闲鱼唤端的背后
唤醒沉睡的你
1606 107
闲鱼唤端的背后
Linux_异常_02_WinSCP上传文件时显示Permission denied
异常现象如下:         二、解决方案 1.设置对应目录权限全开,就可以上传文件到这个目录了 sudo chmod 777 /devloper
2207 0