I know in SharePoint things can be done in many ways and using many technologies. But now I am a bit confused on when/how I can/should/most-appropriate to use ASP.NEW MVC inside SharePoint on-premises and SharePoint online. I can find many tutorials on the web which show how to perform CRUD operations inside ASP.NET MVC web applications which integrates with SharePoint lists, and where 2 technologies are being used to access SharePoint (mainly SharePoint lists):
- CSOM.
- REST API.
and 2 ways of using ASP.NET MVC (this what most confused me):
- create the ASP.NET MVC as a stand alone application, as mentioned on this link YouTube link
- create the ASP.NET MVC as an Add-in inside SharePoint.
Now I do understand that accessing SharePoint lists can be done using CSOM or REST API or other approaches, and it is a matter of preferences/knowledge on which technology to use.
But using ASP.NET as a stand alone application or as an add-in is what confused me. So my questions/concerns are:
- When to use ASP.NET MVC as a stand alone or as an add-in inside SharePoint on-premises and SharePoint online?
now let say i receive a requirement to build a purchase-order module inside SharePoint, so in this case 3 approaches will come to my mind:
- using SharePoint list forms (create, edit, view) + Event Receivers (remote or server side) + adding some JavaScript libraries such as SPUtility to hide, show fields inside the forms.
- develop the purchase-order using a stand alone ASP.NET MVC, and using CSOM or REST API I can add, edit, view lists items.
- Develop a SharePoint add-in using ASP.NET MVC.
So can anyone advice on my above 2 concerns? In my case I have a team with experience in SharePoint + ASP.NET MVC. So from technical perspectives we can deliver the above 3 approaches, but we can not decide on when/how we can/should/most-mppropriate approach to use to develop the purchase-order module?