У меня есть класс клиента, как что:Casting NHibernate Ленивые загруженные объекты (проблема Proxy)
public class Client{
public Person Pers { get; set; }
}
И есть класс ребенка я 2 Person's:
public class PersonType1 : Person {...}
public class PersonType2 : Person {...}
Теперь я загрузил клиент. .. И мне нужно, чтобы получить PersonType1 или PersonType2 атрибуты ..
Я попробовал:
var _pj = ((PersonType1) _client.Pers);
Но это не работает, потому что тип _client.Pers является (нагрузка Ленивый правда) Proxy ...
Есть ли способ сделать это? У меня есть несколько атрибутов в каждом PersonType, поэтому это не очень хорошая идея, чтобы создать виртуальный/переопределить для каждого атрибута (личностно> PersonType1) ...
Благодарности
ли эту работу даже с ленивым = «ложь»? Если «Перс» является прокси-типом PersonType1, действие которого будет действовать по характеру полиморфизма. Я предполагаю, что он не возвращает «PersonType1», а «Person». – Trent