|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
Есть некоторая модель, в которой свойства объектов не являются виртуальными. Что-то вроде: Код: c# 1. 2. 3. 4. 5. 6. 7.
Можно ли каким-то образом заставить NHibernate использовать эту модель и при этом не потерять отложенную загрузку? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 11:04 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
LexxxxxЕсть некоторая модель, в которой свойства объектов не являются виртуальными. Что-то вроде: Код: c# 1. 2. 3. 4. 5. 6. 7.
Можно ли каким-то образом заставить NHibernate использовать эту модель и при этом не потерять отложенную загрузку? а чем виртуал так помешал? тут почитайте ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 12:01 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
LexxxxxМожно ли каким-то образом заставить NHibernate использовать эту модель и при этом не потерять отложенную загрузку? Нет. Если ваша модель - делайте виртуальными. Если сторонний код, то можно воспользоваться чёрной магией . ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 12:21 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
pyroman69, Там вроде написано ()ну по крайней мере мой английский мне вчера так говорил) что нужно для счастья отключить отложенную загрузку. Но вот этого как раз и не хочется! Виртуал мешает тем что сборка с моделью уже существует, и в ней свойства не виртуальные. Мне нужно приладить к готовой системе инфраструктуру, которая использует NHibernate для хранения экземпляров модели. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 12:22 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
Ах, да! Еще можно написать свою ProxyFactory с использованием PostSharp или аналогов. Но сделать методы виртуальными намного быстрее. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 12:22 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
http://nhforge.org/blogs/nhibernate/archive/2008/10/31/entity-name-in-action-entity-abstraction.aspx Фраза оттуда: "proxy : is the interface (the domain); using it as proxy I can avoid virtual methods in the implementation because the underlining Dynamic-Proxy will inherit from the interface. Using interface I have many others vantages but is to long explain each (only one for example: I can cast a proxy-instance to an interface)" Так что вроде можно выкрутиться? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 12:40 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
Lexxxxx, у вас ведь уже есть готовая сборка. Как собираетесь заставить классы в ней отнаследовать интерфейсы? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 13:05 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
SolYUtorLexxxxx, у вас ведь уже есть готовая сборка. Как собираетесь заставить классы в ней отнаследовать интерфейсы? Упс, гоню! ) Но в случае самописанной модели (чтобы знать на будущее) этот подход обеспечит то что нужно? Как я понял достаточно во флюент маппинге будет указать Proxy<IMyEntity>() для всех своих сущностей? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 13:45 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
Lexxxxx, раз Фабио пишет, то наверно можно. Непонятно только нафига. В общем, хотите экспериментов - экспериментируйте. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 15:40 |
|
Как заставить NHibernate использовать модель с не виртуальными свойствами
|
|||
---|---|---|---|
#18+
SolYUtorLexxxxx, раз Фабио пишет, то наверно можно.... Похоже и правда можно. Только вот не понятно как оно работает. Интерфейс который передается в Proxy<IMyEntity>() почти пуст. В нем только ИД. Как оно так получается? ) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2012, 16:38 |
|
|
start [/forum/topic.php?fid=17&msg=38005583&tid=1350210]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
154ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 300ms |
total: | 558ms |
0 / 0 |