views:

25

answers:

1

Hi,

We need to implement a .NET WCF service that will be a part of a SOA solution, which means it's entities will pass through and be changed by both Java & .NET based services, and also on Desktop clients (though they will probably be .NET, but it shouldn't matter).

In order to achieve this flexibility, all objects have to be stateless since we can't pass around the .dll that holds entity implementations & change tracking logic (all object definitions will be picked up by wsdl).

Entities that will be communicated will be in a graph, for example, some main roots, then each of them has a collection, which has collections of their own, etc... each part of the collection can be modified/deleted/inserted.

I know we could use DTO's, but that's an overhead (especially with object graphs, circular pointers, etc...) and I'd like to avoid it for now. But if nothing else proves right, we just might have to go that way...

I have used Entity Framework & LLBLGenPro before, but I'd like to hear your oppinion. So, finally:

What would be your choice of an ORM in SOA environment?

Thanks

+1  A: 

I'd write an OData service for this (am writing an OData service for it, in fact). It's very easy to do this with the Entity Framework, but there are plenty of other choices, too. You can then consume it from just about anything.

Craig Stuntz