流利的NHibernate一对多的关系 - 只需要最后一行

时间:2018-06-11 16:42:24

标签: c# nhibernate fluent-nhibernate nhibernate-mapping fluent-nhibernate-mapping

需要帮助我的映射,我已经让我们说“Anclajes”和另一个用Error_anclajeID记录“Anclajes”的错误| AnclajeId | Status | DateTime 我需要在获取所有“Anclajes”时,“Anclajes”只有一个属性,其中包含来自Gq_error_anclaje的LastOrDefault错误。 这是我到目前为止所得到的,但不知道怎么告诉它得到最后一行

public MapGq_anclajes():base()
{ 
  References(x => x.Status_Anclaje).Column("AnclajeId").ReadOnly().Not.LazyLoad();
}

public class Gq_anclajes : _Gq_anclajes
{ 
    public virtual Gq_error_anclaje Error_Anclaje { get; set; } 
}

现在我正在使用它来获得最后状态“Anclaje”

foreach (item in Anclajes)
{
    var error = 
        Services
            .Get<ServGq_error_anclaje>()
            .FindBy(x => x.AnclajeId == item.AnclajeId)
            .OrderByDescending(c => c.Modificado)
            .FirstOrDefault();
}

1 个答案:

答案 0 :(得分:0)

这不会更有效:

var error = 
    Services
        .Query<ServGq_error_anclaje>()
        .Where(x => x.AnclajeId == item.AnclajeId)
        .OrderByDescending(c => c.Modificado)
        .Take(1);