Our applications architecture is something like below..
* All Components in the same machine
Presentation -> BusinessLogic -> DataAccess Layer -> Database
* Presentation/Business Logic in the same machine, Data Access Service, Data Access and Database in a remote server.
Presentation -> BusinessLogic -> Data Access Service (.NET Remoting Proxy) -> DataAccess Layer -> Database
Note: Presentation could be a web or a desktop app..
We are planning og migrating the Data Service Proxy Layer from .NET remoting to WCF.
The main problem is that layer handles generic types and LINQ expressions.
signatures e.g.:
void Insert<TEntity>(TEntity entity) where TEntity : class
void Delete<TEntity>(Expression<Func<TEntity, bool>> expression) where TEntity : class
Any thoughts?