We have started migration of a .NET thick client application to web. The scope of the work is restricted to migrating the winforms UI to web UI. The biz logic components will be reused as-is after striping the earlier web service wrapper layer as the presentation components and the biz components will get collocated on IIS. We have decided to use WCSF for the purpose. I would like to validate some of the arch/design decisions,
Do we need to use a JS framework, e.g. jQuery, DOJO etc. for AJAX ? Or are the ASP.NET controls has adequate in-built support to take of all JS based front-end validations, AJAX form submits, error message displays etc.
Is there any concern in using foundation modules ? Does it make the application heavy by loading and caching all modules during startup ?
Is using static method / class for all service functionalities a good approach? Or should we non-static class / method with service dependency instead ?
I am new to .NET :)
Sounds more likea junior deveoper.
Re 3: bad approach. Use an dependency injector, and avoid static methods in 90% of the cases. You give up a lot of flexibility. This is btw where my junior developer approachcomes from - static methods and the "healing" are standard IT architecture for years now and not related to .NET.
Re 1: you do not NEED to use a JS framework. You also dont need to buy a car and can build your own. It is not cost effective though. Web application? LEARN .NET first.... like thefact that there is this new sub-framework from Microsoft called MVC in version 3 that makes developing good software sasier (testable backend) and is more suited for web aplications. MS internal standard controls for asp.net and the whole webform framework hare limited and have their own set of problems. That said, MVC is most usefull if you know what you are doing - JQuery wise (integrated) and unit test / architecture wise.
Re 2: what do you care ;) As in: even if it makes them academically slower, it is not really relevant. That said, what are foundation modules? I dont see that word in either the ASP.NET framework or the IIS documentaition.