Критерий вопроса с NHibernate
-
05-07-2019 - |
Вопрос
Я пытаюсь использовать NHibernate для доступа к данным, и у меня есть 2 простых объекта, которые выглядят следующим образом:
public class User : IEntity
{
public int ID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
public string Logon { get; set; }
public string Password { get; set; }
public ICollection<Role> Roles { get; set; }
public bool IsNew
{
get { return (ID == 0) ? true : false; }
}
public User()
{
Roles = new List<Role>();
}
}
public class Role : IEntity
{
public int ID { get; set; }
public string RoleName { get; set; }
public string RoleDescription { get; set; }
public bool IsNew
{
get { return (ID == 0) ? true : false; }
}
}
Мой вопрос ...... как мне создать критерий, если я хочу найти любого пользователя, который содержит роль с идентификатором 1 в своей коллекции ролей? Р>
Решение
Не берите в голову, это оказалось относительно простым делом:
// role was the role passed in to my Find method.
var criteria = DetachedCriteria.For(typeof (User))
.CreateCriteria("Roles")
.Add(Restrictions.Eq("ID", role.ID));
Не связан с StackOverflow