简体   繁体   English

Nhibernate DetachedCriteria:查找属性的属性与值匹配的实体

[英]Nhibernate DetachedCriteria: Find entities where a property's property match a value

I have two following classes: 我有以下两个课程:

public class User
{
    public virtual Guid Id { get; set; }
    public virtual UserCredentials Credentials { get; set; }

    // other stuff

    protected User() { }
}

public class UserCredentials
{
    public virtual Guid Id { get; set; }
    public virtual string UserName { get; set; }

    // other stuff

    protected UserCredentials() { }
}

I want to create a detached criteria that finds all users where Credentials.UserName = "someuser" , but I cannot get it right.. I have tried the following: 我想创建一个分离的条件来查找Credentials.UserName = "someuser"所有用户,但是我做不到。.我尝试了以下操作:

DetachedCriteria.For<User>().Add(Expression.Eq("Credentials.UserName", "someuser");

but I get an exception saying 但我有一个例外说

"could not resolve property: Credentials.UserName of: DataLinkNord.Domain.User" “无法解析属性:DataLinkNord.Domain.User的Credentials.UserName”

Any help would be appreciated.. 任何帮助,将不胜感激..

我已经遇到了这个问题(尽管我是Java用户),但是对我来说,解决方法是先使用“ addAlias()”调用……

DetachedCriteria.For<User>().AddAlias("Credentials", "Credentials").Add(Expression.Eq("Credentials.UserName", "someuser");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM