按NHibernate组件的属性排序而不明确指定它?

时间:2014-05-20 15:25:19

标签: c# nhibernate linq-to-nhibernate

我有两个实体:

class Complex
{
    public virtual MyComponent Component { get; set; }
    public virtual string OtherProperty { get; set; }
}

class MyComponent
{
    public virtual int Number { get; set; }
    public virtual string Description { get; set; }
}
Component的{​​{1}}属性在NHibernate中映射为一个组件。我希望NHibernate在按Complex排序时始终使用MyComponent的{​​{1}}属性。所以每当我写信:

Number

我希望结果只能按MyComponent排序而不是session.Query<Complex>().OrderBy(x => x.Component) - 现在NHibernate按两列排序。如果解决方案在Linq和HQL中都有效,那将会很棒。

我看了Number。我可以用它为它生成适当的HQL,但我需要为Description类型的每个属性注册一个生成器(所以如果我有更多的实体,如LinqToHqlGeneratorsRegistry,我需要多次注册它),我希望在按此类属性排序时始终使用这种排序。

NHibernate有可能吗?

0 个答案:

没有答案