After working with DataObjects for about a month, I thought I'd share a few suggestions from the perspective of a "noob".

1 - Sessions are simply confusing. I understand the need and usefulness of them, but it seems like they constantly cause issues either because of scope or because they don't fall into my crazy style of development. Don't get me wrong, I don't believe this type of lower level control isn't needed, just that a more transparent / automated method could be integrated as well for more simplistic situations. I guess I believe they're counter-intuitive to the idea of rapid application development on their base level...

2 - The fact that objects are always connected is both a blessing and curse at the same time. The fact that the only method of using them as a detached object is by jumping through hoops with sessions and disconnectedState is extremely complicated to understand and takes away from how simple dataobjects makes data access. It would be absolutely amazing and powerful to be able to transition an object to and from states by:

myobj.Disconnected = true;



By automating this transition (disconnecting events, deactivating from underlying listeners, etc.) and transforming the object to an offline state would make RIA integration much more easy to manage and has many practical usage cases.

Including specific LINQ expressions such as ToOfflineList() & ToOfflineSingle() could also help keep unneeded transactions to a minimum.

3 - Centralizing the model. This might very well be possible, but I've tried several things and have had to include little hacks to have a central model library. This includes when using a class domain manager and upgrade handler.

Being able to reference a single library and integrate into an existing project with data access already validate, managed and concurrent would be exceptionally powerful. Being about to specify the UpgradeHandler or being able to specify which applications only validate the domain and which actually handle the upgrades would take the guess work out of rolling out new versions of n-Tier applications.

I'm not trying to be critical or speak ill of what I consider the single best ORM I've ever used. I only bring these up in the hopes of that perhaps the core developers see value in these suggestions and consider the value of some of them.

Thanks for an amazing framework... Sorry if this isn't the right venue for this, but I couldn't really find a better spot.

asked Jan 16 '12 at 12:56

twist's gravatar image


One Answer:

Dear twist,

Thank you for the detailed story, it is absolutely amazing to receive such a high quality feedback. I think it is worth a DataObjects.Net license for free, if you are still in our camp. =)

Frankly speaking, we are regularly speculating about ideas from 2-3 but we were pretty sure that sessions are quite obvious and easy-to-use abstract.

Could we contact you by e-mail to discuss and possibly find out better ways of DataObjects.Net architecture/patterns/API/use cases?


answered Jan 16 '12 at 13:20

Dmitri%20Maximov's gravatar image

Dmitri Maximov


Definately feel free to contact me. I'd be happy to discuss anything and am going to continue with DataObjects as I've felt that this implementation has been needed for years.

(Jan 16 '12 at 14:13) twist twist'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


Once you sign in you will be able to subscribe for any updates here



Asked: Jan 16 '12 at 12:56

Seen: 2,264 times

Last updated: Jan 16 '12 at 14:13

Related questions

powered by OSQA