Hi, guys! What is going on with DTO pattern in DO 4 introduced in DO 3? Seems, all data objects now MBVs, right? But still many questions raised (fill descriptors, client-side business logic implementation ways etc.) Can you please comment a little? I consider to port my DO 3 application into DO 4. Also security implementation highly demanded. Thanx.

This thread was imported from our support forum. The original discussion may contain more detailed answer. Original topic by murlex.

asked Oct 20 '09 at 07:38

Editor's gravatar image


One Answer:

For now there are no good solutions yet, but we're working on the first one of them: DisconnectedState. I know single example is better than lots of words, so I just published it.

The next logical step here will be object-to-object mapper with LINQ support. And, as far as I feel, that's all we must support.

All our objects are really MBVs, but we did this mainly to prevent usage of our entities via .NET Remoting by regular way. They can be serialized and deserialize as well, but as you suspect, you need active Session to deserialize them; moreover, currently serialization is actually a serialization of references. I.e. when you serialize Entity e1 and deserialize it as e2, the only requirement we satisfy is that e2.Key==e1.Key. So serialization we provide for entities actually allows to resurrect them in another Session with their current state; their original state won't be resurrected.

Fill descriptors aren't necessary now. You can fill the DisconnectedState by doing anything that "pulls" the data out of the database. When you pull some Entity or EntitySet data by this way, be sure it will be cached in DisconnectedState. Btw, I forgot to mention there is MergeOptions as well - they define the behavior of handling conflicts between already cached and just pulled out data.

As you see, now we allow to use the same Entities and logic on the client. If you'd like to check if it is really client-side Session, use Session.IsDisconnected or Session.Options properties. I mentioned that initially we deliver everything as change set containing low-level operations only, but later we'll record really invoked actions.

And about security: we're going to start works on it before the end of this month. Right now we need this ASAP to port MEScontrol to DO4.

Until now we just discovered this is a result of bug in phpBB that exposes itself just on Windows. It seems there is no any good solution for now. I'll try to unsubscribe you manually. If this won't work, it's a good idea to manually change your e-mail to some non-existing one, or simply follow all the e-mails this forum sends immediately to trash.

If you're interested in news, you can subscribe to this RSS channel: syndication.php

answered Oct 20 '09 at 10:44

Alex%20Yakunin's gravatar image

Alex Yakunin

murlex wrote: I keep receiving notification mails (sometimes 5-6 in a day!) about this topic, though I've unsubscribed. Can you please, check what is going on. Thanx.

(Oct 20 '09 at 10:44) Editor Editor's gravatar image

murlex wrote: Guys, HELP! It still attacks me with tenths notifications :( I've changed my e-mail, but it did not help.

(Oct 20 '09 at 10:44) Editor Editor's gravatar image

I just disabled forum e-mails completely. It seems that's the only solution we have now.

Please use RSS subscription instead.

(Oct 20 '09 at 10:44) Alex Yakunin Alex%20Yakunin's gravatar image
Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
toggle preview

powered by OSQA