Working with ASP.NET Core and a modern front end javascript library.

maqskywalker
maqskywalker used Ask the Experts™
on
In the past I have developed applications using C#, ASP.Net Web Forms, Asp.Net MVC 5 , Razor , javascript, css, bootstrap, Entity Framework and SQL Server.
I'm familiar with ASP.NET MVC model.

Now i'm looking at upgrading my skills to ASP.NET Core.

I saw this book.

https://www.amazon.com/Front-end-Development-ASP-NET-Angular-Bootstrap/dp/1119181313/ref=sr_1_4?keywords=asp.net+core+angular&qid=1557595000&s=books&sr=1-4


Which led me to think the following.

If I'm going to create a ASP.NET Core MVC application using Entity Framework with a Sql Server back end....

What is the advantage of bringing in Angular into the mix?

What is the advantage of using Angular + ASP.NetCore MVC + Razor + JavaScript + CSS + Bootstrap + C# + Sql Server?

Rather than just this ASP.NetCore MVC + Razor + JavaScript + CSS + Bootstrap + C# + Sql Server?
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Chief Technology Ninja
Distinguished Expert 2018
Commented:
Hi Mike,

I will keep this discussion .Net Core focused, for older ASP.Net version, I would strongly recommend go with Angular.

Couple of areas which you should think of before making your decision:
Performance:
If you have used WebForms, you know why people preferred AJAX? 'cause it removed the post backs and thus got rid of the transfer of HTML, ViewState and other round trip related issues. Similarly when you introduce Angular in the mix, you will define APIs on the server and will consume it on client side using Angular.

Also Server side rendering means more load on the server, if you have a huge user base - this can translate in to a huge money saver (Overall compute will decrease dramatically).

Separation of concern:
Not many thinks from this angle but it gives you a better control in terms of separation of concern. I can have dedicated team just to work on front end - easier to manager (From development, version control, deployment etc.)

Rapid Application Development:
Razor supports scaffolding, Angular does not.

All in all, if you are not developing an application with huge user base and you do not have the luxury to accommodate Angular, you can go with Razor views as well.

Regards,
Chinmay.

Author

Commented:
Thanks

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial