Not to mention that performance is better since it does not use
reflection to do the call.
cheers,
Krzysztof
On 28/09/2010 11:42 AM, Stefan Sedich wrote:
Yeah had that too, call Proceed() and then get the ReturnValue and do
whatever I need with it.
Seems to work the best.
Thanks
2010/9/28 Krzysztof Koźmic <[email protected]
<mailto:[email protected]>>
Why not just call the proceed?
On 28/09/2010 11:35 AM, Stefan Sedich wrote:
When that runs I end up with a stack overflow, I guess what I
need is the method the interceptor calls for proceed?
I can do it with something like
public class PersonInterceptor : IInterceptor
{
private Person _impl;
public PersonInterceptor(Person impl) {
_impl = impl;
}
public void Intercept(IInvocation invocation)
{
var value =
invocation.MethodInvocationTarget.Invoke(impl, invocation.Arguments);
// Do something with value
}
}
I just thought InvocatgionTarget gave me what I wanted but it
seemed I was totally wrong.
Thanks
2010/9/28 Krzysztof Koźmic <[email protected]
<mailto:[email protected]>>
what actual value?
On 28/09/2010 11:29 AM, Stefan Sedich wrote:
I am a bit confused about what I thought InvocationTarget
returns, say I have the following:
public class PersonInterceptor : IInterceptor
{
public void Intercept(IInvocation invocation)
{
var value =
invocation.MethodInvocationTarget.Invoke(invocation.InvocationTarget,
invocation.Arguments);
// Do something with value
}
}
var factory = new ProxyGenerator();
var proxy = factory.CreateClassProxy<Person>(new
PersonInterceptor());
The InvocationTarget in the inercept is the proxy itself,
not sure if I am just being silly here, but how would I
get the actual value like this.
Cheers
--
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]
<mailto:[email protected]>.
To unsubscribe from this group, send email to
[email protected]
<mailto: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]
<mailto:[email protected]>.
To unsubscribe from this group, send email to
[email protected]
<mailto:castle-project-users%[email protected]>.
For more options, visit this group at
http://groups.google.com/group/castle-project-users?hl=en.
--
Stefan Sedich
Software Developer
http://weblogs.asp.net/stefansedich
--
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]
<mailto:[email protected]>.
To unsubscribe from this group, send email to
[email protected]
<mailto:[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]
<mailto:[email protected]>.
To unsubscribe from this group, send email to
[email protected]
<mailto:castle-project-users%[email protected]>.
For more options, visit this group at
http://groups.google.com/group/castle-project-users?hl=en.
--
Stefan Sedich
Software Developer
http://weblogs.asp.net/stefansedich
--
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].
For more options, visit this group at
http://groups.google.com/group/castle-project-users?hl=en.