I need guidance on single page ASP.Net application with Provider hosted apps. I heard most of the people are doing this through MVC 5, Knockout.js along with PFA. In real time situation what is the industry trend i.e. how people are creating single page application with Provider hosted apps? is MVC is must? is Knockout.js is must? Thank you in advance.
1 Answer
If you want to create a single page application (SPA) app usually you have to choose a client side framework. Here is very short review of common SPA frameworks: JavaScript SPA-Frameworks Technically Knockoutjs is not a SPA framework, but MVVM two way data binding technique for your UI, Durandal JS is a SPA frame work that is built on Knockout JS base. If you look at google trends Angular JS looks like as most popular among all these. But it is quite complicated.
From SharePoint perspective your SPA app can be Provider Hosted App or event SharePoint Hosted app, because SPA behavior is made on client side. Here is a sample how to make SharePoint hosted app using Angular JS.
When you think about back-end side of your SPA app, ASP.NET MVC also is NOT a must to, but is quite common. Usually SPA frameworks "talk" with server using REST web services. It is easiest to make them using ASP.NET Web API/MVC technology. Here are samples how to make ASP.NET MVC app for SharePoint:
- ASP.NET MVC based Apps for SharePoint 2013
- Walkthrough: Creating a O365 SharePoint 2013 App with ASP.NET MVC 5
And finally here is another sample how to create SPA web application using ASP.NET MVC and Angular JS.
So, SPA app on SharePoint is quite a big MIX of various technologies :)