The same DevForce domain model supports multiple client platforms, so let me describe a few components of the architecture and you can see what works best for you:- DevForce exposes a generic WCF query service that takes an arbitrarily complex LINQ expression and returns serialized entities back to the client over the internet. This services supports any of the .NET platforms - WPF, Silverlight, Mono, and Windows Phone 7 (Mango).
- For non-.NET platforms, you can query for DevForce entities by using OData, an open XML service supported by the major platforms including Objective-C, Java, JavaScript, PHP, Ruby, and .NET. You can see the full list here ( http://www.odata.org/developers/odata-sdk - http://www.odata.org/developers/odata-sdk ). We have a tutorial here ( http://drc.ideablade.com/xwiki/bin/view/Documentation/odata-enable - http://drc.ideablade.com/xwiki/bin/view/Documentation/odata-enable ).
- If you want to define the query on the server instead of composing it on the client, you can use Named Queries in DevForce to do this ( http://drc.ideablade.com/xwiki/bin/view/Documentation/specialized-named-query - http://drc.ideablade.com/xwiki/bin/view/Documentation/specialized-named-query ). These named queries can be accessed using the EntityManager for .NET clients, or using OData for all other clients.
The named queries sound a lot like what you described, so definitely take a look at that. Hope this helps!
|