How to implement a .net 3-tier architecture using Winforms
- by Anders Jakobsen
I have for some time build n-tier Applications using a database server as the data tier, Winforms as the presentation tier and an ASP.NET asmx webservice in the middle to send back and forth untyped Datasets. While this approach has worked for me so far, it certainly does feel outdated today.
What technologies should I use if I were to create a similar architectured application today? .net 4.0 technology is welcome.
I still want a database server as the datatier and the asmx webservices should probably be replaced by WCF. I would still like to have the presentation tier running as a desktop application (Winforms or WPF) so ignore ASP.net for this question.
My main question really comes down to what to use as business objects. I want something that is easier to bind to the interface than untyped Datasets and strongly-typed datasets feels very heavy. I also need something that can track changes to make sure users do not override each other's changes in the database.
Will the Entity Framework 4 be usable for a scenario like this?
Are there any thorough guides available?