在nhibernate mvc c中加入两个表#

时间:2015-04-28 06:49:18

标签: c# join nhibernate nhibernate-mapping

我使用主键和外键加入两个表。

我的桌子是

  1. 项目,列为:
    • ItemId int主键,
    • 名称 varchar,
    • 价格浮动,
    • CategoryID int外键,
    • QtyInStock int
  2. 类别,列为:
    • Id int pk,
    • 类别 varchar,
    • 名称 varchar
  3. 我想根据ID = categoryId

    选择类别

    我正在使用NHibernate 4.03和xml配置文件。

1 个答案:

答案 0 :(得分:4)

对于不相关的实体:

var query = from item in session.Query<Item>() 
    join category in session.Query<Category>() on item.CategoryID equals category.Id;

对于相关实体:

Category catAlias = null;

var query = session.QueryOver<Item>()
    .JoinAlias(x => x.Category, () => catAlias);