retoro
9/2/2004 2:26:00 PM
I don't think it takes away from it -- in fact, it makes perfect sense to
me. From a technical point of view, it's clear that if the client has its
own local copy of the object then it must also have the implementation code
for that object. Otherwise, when you call a property or method on the
object, how would the client know what to do? For MBRO objects, it doesn't
need the implementation since the call is forwarded to the server -- all it
needs is to know the property arguments and return value. But for
marshal-by-value objects, complete knowledge of the object is required.
As I mentioned before, from a logical point of view I think of serializable
types as part of the client/server interface. They provide a means for
passing data objects back and forth. Business logic classes should generally
by MBR. Because they're part of the "interface", having both client and
server know them is completely reasonable/expected.
Ken
"Noel Watson" <noelwatson@bristol94.freeserve.co.uk> wrote in message
news:84554d21.0409020046.334af4e1@posting.google.com...
> Thanks for the response Ken,
>
> One thing is still puzzling me. Are you not taking away some of the
> advantages of interface based remoting (not deploying server code to
> the client) by having to place your serializable objects on the
> client's machine. I've read the two main books on Remoting (Ingo's and
> MSPress) and I don't believe either of them mentioned this
> requirement.
>
> Noel