代码之家  ›  专栏  ›  技术社区  ›  Chance

单次或默认时出现NHibernate LINQ错误

  •  0
  • Chance  · 技术社区  · 16 年前

    我把头发拔出来,不知道是什么原因造成的。

    我有以下LINQ查询:

    return Session.Linq<CandidateAccountEntity>().SingleOrDefault(p => p.UserName.ToLower().Equals(userName.ToLower()));
    

    并引发以下错误:

    索引超出范围。必须是 非负且小于 收藏。

    如果我试图用支票包装它:

    if(Session.Linq<CandidateAccountEntity>().Any()) {...}
    

    然后我得到以下错误:

    无法执行查询[选择] 计数(*)为y0_uu自 [候选会计实体]此内部 加入cfg.帐户 这个会计实体 1_id=this_1_.AccountId ] [SQL: SELECT count(*) as y0_ FROM [CandidateAccountEntity] this_ inner join CFG.Account this_1_ on this_.AccountEntity 1_id=此_1_u.accountid]

    内部例外:

    “在'`.'附近有语法错误”

    任何帮助都会得到极大的满足。我不想在周五下午被困在这里:/

    1 回复  |  直到 16 年前
        1
  •  1
  •   Diego Mijelshon    16 年前

    NH 2.x Linq提供程序不支持ToLower。它与3.x中的集成供应商一起工作。

    推荐文章