So it's some sort of a dynamic proxy that is invoked and fetches the data?
Neat.
2010/8/9 Roelof Blom <[email protected]>

> Actually it's NH that generates the proxy.
>
>
> On Mon, Aug 9, 2010 at 11:46 AM, Rohan <[email protected]> wrote:
>
>>  I would imagine that AR generates a dynamic proxy and uses interceptors
>> to perform lazy loading. I am not familiar with AR, but have been using
>> Dynamic Proxy and Windsor container for the last year, there are plenty of
>> examples that demonstrate these concepts.
>>
>>
>> On 9/08/2010, at 8:47 PM, omer katz <[email protected]> wrote:
>>
>>     My question is not how lazy loading works.
>> I meant how is the fetching invoked when the property is first accessed?
>>
>> 2010/8/9 Roelof Blom < <[email protected]>[email protected]>
>>
>>> Hi Omer,
>>>
>>> Lazy loading of collections works with NH 2.1, and thus with
>>> ActiveRecord.
>>>
>>> To learn how lazy collection works check this: 
>>> <http://nhforge.org/wikis/howtonh/lazy-loading-eager-loading.aspx>
>>> http://nhforge.org/wikis/howtonh/lazy-loading-eager-loading.aspx
>>>
>>> -- Roelof.
>>>
>>>   On Mon, Aug 9, 2010 at 9:48 AM, omer katz < <[email protected]>
>>> [email protected]> wrote:
>>>
>>>>   So
>>>> [
>>>> HasMany(Lazy = true)]
>>>>
>>>> public
>>>> virtual ISet<foo> foos;
>>>>
>>>>
>>>>
>>>> doesn't work as well?
>>>>
>>>> How come it compiles?
>>>>
>>>> If it does work, how does it load the set lazily?
>>>>
>>>> 2010/8/8 Markus Zywitza < <[email protected]>
>>>> [email protected]>
>>>>
>>>>> Not at all.
>>>>>
>>>>> This doesn't work with NH2.1, only with NH3.0 Alpha. AR uses NH2.1.
>>>>>
>>>>> -Markus
>>>>>
>>>>> 2010/8/8 omer katz < <[email protected]>[email protected]>:
>>>>>  > In active record to write a model you write:
>>>>> >
>>>>> > [ActiveRecord("TableName")]
>>>>> > public class Model
>>>>> > {
>>>>> >    [Property("SomeField")]
>>>>> >    public virtual string SomeField { get; set; };
>>>>> >
>>>>> >    [Property("SomeLazyField"), Lazy= true]
>>>>> >    public virtual string SomeLazyField { get; set; };
>>>>> >
>>>>> > }
>>>>> >
>>>>> >
>>>>> > If the field is lazy it must fetch it on the first access, so how
>>>>> does the
>>>>> > Property attribute override the property and fetches the
>>>>> SomeLazyField
>>>>> > value?
>>>>> >
>>>>> > Thanks,
>>>>> > Omer
>>>>> >
>>>>> > --
>>>>> > You received this message because you are subscribed to the Google
>>>>> Groups
>>>>> > "Castle Project Users" group.
>>>>> > To post to this group, send email to
>>>>> <[email protected]>
>>>>> [email protected].
>>>>> > To unsubscribe from this group, send email to
>>>>> > <castle-project-users%[email protected]>
>>>>> [email protected].
>>>>> > For more options, visit this group at
>>>>> > <http://groups.google.com/group/castle-project-users?hl=en>
>>>>> http://groups.google.com/group/castle-project-users?hl=en.
>>>>> >
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Castle Project Users" group.
>>>>> To post to this group, send email to
>>>>> <[email protected]>
>>>>> [email protected].
>>>>> To unsubscribe from this group, send email to
>>>>> <castle-project-users%[email protected]>
>>>>> [email protected].
>>>>> For more options, visit this group at
>>>>> <http://groups.google.com/group/castle-project-users?hl=en>
>>>>> http://groups.google.com/group/castle-project-users?hl=en.
>>>>>
>>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Castle Project Users" group.
>>>> To post to this group, send email to
>>>> <[email protected]>
>>>> [email protected].
>>>> To unsubscribe from this group, send email to
>>>> <castle-project-users%[email protected]>
>>>> [email protected].
>>>> For more options, visit this group at
>>>> <http://groups.google.com/group/castle-project-users?hl=en>
>>>> http://groups.google.com/group/castle-project-users?hl=en.
>>>>
>>>
>>>   --
>>> You received this message because you are subscribed to the Google Groups
>>> "Castle Project Users" group.
>>> To post to this group, send email to
>>> <[email protected]>
>>> [email protected].
>>> To unsubscribe from this group, send email to
>>> <castle-project-users%[email protected]>
>>> [email protected].
>>> For more options, visit this group at
>>> <http://groups.google.com/group/castle-project-users?hl=en>
>>> http://groups.google.com/group/castle-project-users?hl=en.
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Castle Project Users" group.
>> To post to this group, send email to
>> [email protected].
>> To unsubscribe from this group, send email to
>> [email protected].
>> For more options, visit this group at
>> http://groups.google.com/group/castle-project-users?hl=en.
>>
>> --
>>  You received this message because you are subscribed to the Google
>> Groups "Castle Project Users" group.
>> To post to this group, send email to
>> [email protected].
>> To unsubscribe from this group, send email to
>> [email protected]<castle-project-users%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/castle-project-users?hl=en.
>>
>
> --
>  You received this message because you are subscribed to the Google Groups
> "Castle Project Users" group.
> To post to this group, send email to [email protected]
> .
> To unsubscribe from this group, send email to
> [email protected]<castle-project-users%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/castle-project-users?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Castle Project Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-users?hl=en.

Reply via email to