Click here to Skip to main content
15,891,033 members
Please Sign up or sign in to vote.
1.00/5 (2 votes)
I have a concern about the architecture I have to do for my website I am programming with ASP.NET MVC 5 (C#), AngularJS v1.6, HTML5, Bootstrap v3.3, and SQL Server 2014 at the moment.

The web application will not be a SPA, I will have at least 5 pages, including 1 form to fill, the other 4 are grids with CRUD options, with export functions to Excel, integration of Content exported for mail delivery.

My concern is that I have to put in place a form to fill, which is totally dynamic, configurable and customizable. I want all its contents to be modified (addition / deletion / modification of labels, fields, contents of drop-down menus / lists, etc ...). The form needs to be fully dynamic and customizable, ie I must be able to create and edit the corresponding tables in the database from the form that is continually evolving. in other words, I want a DDL front-end. The content (labels, fields, field contents ...) of my form changes continuously, and I want each change made in an admin interface of this form automatically reverts to my database containing the table of the form.

I thought of making Add / Modify / Delete buttons in front of each form field, but how to do it with AngularJS and how to bind and integrate all these changes in the SQL Server database.

Another question, I'm a beginner and I have never worked with before with the three technologies together ASP.NET MVC 5, AngularJS v1.6 and SQL Server 2014. What do you advise me as architecture for my application to be the least complex to program? Using Web API REST or not? Using AngularJS routing or ASP.NET MVC routing (I have not yet seen how to use routing under AngularJS, but I've seen that ASP.NET MVC was easy) ? Using Entity Framework or NHibernate ? Using Unity or Spring.NET or nothing for injection of dependencies? ... Do you have any other suggestions?

Very cordially and thank you very much in advance.

What I have tried:

Nothing for the moment, I'm making a first version form with static contents.
Posted
Updated 1-May-17 4:56am
v6

1 solution

Definitely use ASP.NET MVC routing and structure for handling database (sql server) do not combine this with angular or another framework.
stick to Model - view - control, angular only used in views do not override model or control functions and structure leave that to your .net client. So angular is there only in this case for making your UI smoother.

MVC is most based on server side and angular/bootstrap is used client side. Angular and bootstrap are fine in combination to help you creating simple views and customization. for the API I would prefer REST, because of the future functions and implementations. But if you are not planning to use your API in future programma's than I would not recommend. Rest api takes more time than a simple webserver client. For handling rest api client I would suggest [RestSharp] quick and simple.

I use Ninject for injections, think this is one of the quickest I have seen so far. I can't see if you really need injections in your project dependence on the complexity of you structure and time you have to make the dependencies. Also autofac or another dependencies framework will work fine ofcourse, think this is user preference and what you already have knowledge of. If you want to use UNI-testing than you will need dependencies injection for sure this will save you allot of time at the end.

Entity Framework wil be the easiest way with a sql server 2014 to implement. If you goal is to not make it complex than I would stick to Entity Framework.
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900