Допустим, у меня есть два класса:
public class A
{
public virtual int Id { get; set; }
public virtual Object1 Obj { get; set; }
}
public class B : A
{
public new virtual Object2 Obj { get; set; }
}
Я использую Fluent NHibernate и создал два разных сопоставления для двух классов. Однако, когда я пытаюсь сделать запрос к классу A в моем хранилище, FNH находит и класс B, и A, что имеет смысл, поскольку оба являются A.
Пример (этот критерий будет запрашивать как A, так и B):
public List<T> GetByName(string name)
{
return Session.CreateCriteriaOf<A>.Add(Restrictions...);
}
При написании CreateCriteriaOf<A>
я хочу запрашивать только через A, а не B. Как я могу решить мою проблему?