Hakoo Desai
Hakoo Desai

Reputation: 185

how to design application architecture in ASP.NET

I am going to convert Visual C# application into ASP.NET. For this task, I want to create architecture first and then want to develop programme. So, how can I break-down my logic into libraries? I know, its very basic question, but very much worried about it as I am working alone and I need assistance..

Upvotes: 1

Views: 1807

Answers (2)

Nigel Findlater
Nigel Findlater

Reputation: 1724

With any luck your existing application has been written using SOLID OO principles. In this case you can separate your business logic from your UI. If this is not the case then I would start by making a clean set of interfaces to your business logic and make some unit tests around them. The next thing is MVC is optimized for disconnect situations such as web applications. Depending on what infrastructure you have create either an MVC3 or and MVC4 application using Razor and test projects. As you build out your project try to make unit tests as you go. This will improve the reliability of your code, also switch on the FxCop static code analysis. The next thing you will need to think about is how interactive you want your web UI to be. If your users are intranet users perhaps you could get away with using the scaffolding features with the data annotations in the model. If your application is to impress external customers then you need a richer user experience. In which case look into making an MVVM pattern on your client browser using knockout. Here is a link http://www.codeproject.com/Articles/305308/MVC-Techniques-with-JQuery-JSON-Knockout-and-Cshar

As you build the controllers there is a tendency for them to become fat (it’s a consequence of SRP) Think about using techniques such as aspect orientated programming with compiler attributes and filters to keep the code dry and clean.

A lot of what you need to do will depend on your organization. For example if you are working in an organization with SOA policies then you will need to discuss with your architects how you want to use WebAPI vs WCF. Another aspect to think about is how will Microsoft support client side scripting in the future. At a guess I am hoping that they will make tooling to simplify the javascripting side. For the time being I am learning HTML5 with javascript libraries like Jquery,Jquery-Ui, Ajax in order to make a richer user experience

I hope this helps…

Upvotes: 1

Patrick Guimalan
Patrick Guimalan

Reputation: 1010

I used this Building Layered Web Applications with Microsoft ASP.NET as a model when i started building web applications using ASP.Net

Upvotes: 0

Related Questions