Dr Herbie said:
As to the WinForms thing: some of us spend all our working time on brownfield projects and don't get to play with the shiney new stuff until the customer decides they're happy to update 100s of client machines ...
Our customers still run SQLServer2000!
EDIT: That's a point - can you compile ASP.NET MVC against .NET2.0 ?
MVC is important for the people that are developing sites using Linq to SQL and Linq to Entities. If you are using stored procedures, your logic is already decoupled, so you just wrap a web service around it, and use either a windows , wpf or asp.net
web form. People are too hung up on the differences, ultimately win/wpf/web forms are just presentations layers.
In WPF the MVVM is just a decoupled binding source. You create a class that is your ViewModel that inherits from ObservableCollection that tracks changes. In windows forms, use the binding source and your dataset (functions as ObservableCollection does i.e.
The key difference is that in windows forms the binding is tightly coupled (unless you use CLSA.NET stuff) but the fact that you can pass datasets from service to client, results in a superior client service/model than MVVM which is a
of boilerplate plumbing, but something your Linq fanatics love (mapping classes to objects).
There is more than one way to skin-this-cat, some of the older techniques are far much more productive and result is less code bloat, but it depends of the type of developer you are.