Have you looked at InterLinq? It is a way of serializing linq queries. Instead of exposing a bunch of ugly repository methods, you only have to expose Query of T. You can use an interceptor to fake the generic method on the client proxy:
[OperationContract] IQueryable RealQuery(string typeName) IQueryable[of T] Query[of T]() I went this way in my current project... I ended up scrapping it because I had no need for n tier with wcf. On Jun 17, 5:08 am, Craig Neuwirt <[email protected]> wrote: > Thanks for all of your feedback. It's been very helpful. Currently, there > is no performance issue with respect to data access. I am a big fan of > databinding to domain model, but the client wants to remove all access to > the db in the DMZ. Messaging will certainly replace the workflow aspects of > the app so I was trying to minimize the types of communication from the app > layer. I agree messaging is not really optimal for data querying,but I so > don't look forward to having to define a bunch of data contracts to > represent the query results. > Thanks again, > craig > > On Wed, Jun 17, 2009 at 2:37 AM, rg <[email protected]> wrote: > > > Craig, I would think twice about replacing synchronous communication > > between web frontend and backend with async messaging. Probably this > > will lead to major redesign of the system, besides you will have to > > store local state somewhere in the web application (because messages > > arrive asynchronously) and use polling at the client (javascript?) to > > detect state changes. What good will it do to the application? For > > sure it will complicate the web application and the browser javascript > > code, it also might improve overall performance (or decrease it as > > well) - of course if there was any performance problem at first. If > > performance is the issue you should do some profiling to spot the > > problem - probably the database access is the slowest and least > > scalable part of the system, so using async messaging in the layers > > above db will not change anything in query performance. > > Rafal --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Rhino Tools Dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rhino-tools-dev?hl=en -~----------~----~----~----~------~----~------~--~---
