Skip to main content

SharePoint 2013 Inside SharePoint App development

SharePoint development history: SharePoint purely development solution history started with SharePoint 2007 version released. Microsoft came with the first fully managed solutions also known as farm solutions. Next release was SharePoint 2010 where Microsoft extended the option for hosted options available to developers by introducing sandboxed solution deployment as an alternative to farm solution deployment that enable the developer to write the code for hosted environment office 365 with some limitation. Most of the companies small scale IT companies move to the Office 365 environment and it is very popular. As other vendors come up with the Apps(Apple etc.). Microsoft comes with App model with this current version 2013 and its mostly focus on the cloud. So there was no big changes for Farm Solution, main focus on the App development (Sandboxed solutions are deprecated in SharePoint 2013).

Farm Solution: SharePoint 2007 represents the first version of SharePoint technologies where Microsoft invested to create a true development platform by introducing features and farm solutions. 
  • Managed solutions also known as farm solutions will be hosted within the main SharePoint worker process (w3wp.exe). 
  • Full trusted solutions can be installed on any scope (Farm, Web App, Site Collection, Sites). 
  • The deployment, most farm solutions require a Farm Administrator to do the deployment and mostly restarts the IIS on all the WFEs, which causes a disruption in the service. 
  • Down time considerations 
  • Cost 
  • High Availability and Disaster recover changes 
  • Monitoring 
  • Integrate with other applications using BCS (Business Connectivity Service), Web Services or build your own service application, this provided the end users with limited experience integrating with external applications. 
Sandbox Solution: SharePoint 2010 where Microsoft extended the options available to developers by introducing sandboxed solution deployment as an alternative to farm solution deployment. 
  • Sandbox solutions will run within the SharePoint sandbox worker process (SPUCWorkerProcess.exe). 
  • Sandbox solution or partially trust a solution is scope limited to Site Collections. 
  • Down time considerations 
  • Cost 
  • High Availability and Disaster recover changes 
  • Monitoring 
  • Only resources that are available on the server that is running the sandboxed worker process can be accessed. An external database, for example, cannot be accessed. This means that a BCS Model cannot be deployed in a sandboxed solution. 
  • Although the deployment of Sandbox solutions is a lot easier and straight forward but there’s no indication on whether or not it’s safe to activate this sandbox solution without actually activating it and giving the code inside aces to all the site collection’s content. Not required to reset the IIS. 
  • Sandbox Solution best use for Office 365. 
  • The limitation of sandbox solution 
App Solution: SharePoint 2013, Microsoft has now added a third option for SharePoint developer with the introduction of SharePoint apps. It is different from Farm and Sandbox Solution. Why it is different? The main reason “App runs 100% outside of the SharePoint server, and their custom code executes either within the context of the client browser or on other servers that are not running SharePoint such as Web servers in the cloud.” 


  • Get rid of the custom code; that gives increases the scalability of SharePoint Farm. 
  • Farm Solution during migration creates problems while upgrade WSP from one version to another. 
  • No Need to maintained two solutions that runs Office 365 as well as in Farm Solution. Now the whole point of an App is you don’t worry where it’s hosted or deployed as it should behave the same on both On-Premise and Cloud environments. 
  • Not required to learn SharePoint object Model for App development. As App Model provides a loosely coupled architecture for building Apps in SharePoint 2013. Gives the freedom of choice for developers in the technologies they use to not only host their applications, but also the tools they use to write them. Apps can leverage industry web standards such as HTML, JavaScript, jQuery, JSON, REST, OData and OAuth to provide an integrated user experience. 
  • Visual studio 2012 templates support the App. 
  • Newly added event receivers that specially works for Apps. 
  • Debug your code by using Remote Debugging option. 
  • Deploy your app at “Site Scope” and “Tenancy Scope” level. 
  • Sandbox solution deprecated by the Microsoft for 2013 release. So only the App model will be used for development app that runs both on- Premise and cloud environments. 
  • Apps provide you with the simplest marketing and sales system based on a Microsoft-provided online app store. 
  • You can use the create the reusable solution to your farm later if you want you can sell the same on the Market Place to sell your app and generate revenues for your company. 

Disadvantage of App Model 
One explicit limitation of the SharePoint App Model is that server side code is explicitly prohibited from residing on the SharePoint farm as part of an App. Any server side code that is utilized in the context of an App must be hosted outside of SharePoint either in the cloud or on-premises. 

Comments

Popular posts from this blog

SharePoint RPC Protocols Examples Using OWSSVR.DLL

What is SharePoint RPC Protocols? Part 1 This reference includes information about the methods and usage of SharePoint Foundation Remote Procedure Call (RPC) protocol. This protocol can be used in Win32-based applications or in ASPX applications to make HTTP POST requests to the server. Methods in this protocol that do not modify the contents of the database can also be used in URL protocol to make HTTP GET requests. Definition taken from http://msdn.microsoft.com/en-us/library/ms448359.aspx You will find the OWSSVR.DLL in SharePoint 2010 Server Physical Path: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI and MOSS C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\ISAPI OWSSVR.DLL List of commands DialogView  Display ExportList GetProjSchema GetUsageBlob HitCounter RenderView To read more about the OWSSVR.DLL command Please read the URL Protocol from Microsoft Blog having a URL http://msdn.microsoft.com/en...

SharePoint 2013 Search Database Part 1

SharePoint 2013 Search architecture drastically change, as earlier in FS4SP 2010 we have 2 search applications “FASTContentSSA” and “FASTQuerySSA” and 7 total database in use. Following are the List of DB (FS4SP) FASTContentSSA Search Service Application DB Search Service Application Crawl Store DB Search Service Application Property Store DB FASTQuerySSA Search Service Application DB Search Service Application Crawl Store DB Search Service Application Property Store DB FASTSearchAdminDatabase : Fast Search Admin Database  In SharePoint 2013 search has only 1 Search Service application and 4 database in use. No property store database need any more, now the properties are directly stored inside the index component and all the index directly indexed to the physical system where FS4SP data comes from database as well as from the File system now data directly stored and indexed/ retried from the Physical disk because of this performance increase and search experien...

STS CryptographicException Error : Key set does not exist

Common mistakes Both SharePoint Site and SSO Site NOT running on the same application pool. Application pool identity user doesn’t have permission to access the certification.  Solution to this problem Set the same identity pool to  : 2. Be sure to grant rights to the certificate for the App Pool running the web service Start -> Run -> MMC File -> Add/Remove Snapin Add the Certificates Snap In Select Computer Account, then hit next Select Local Computer (the default), then click Finish On the left panel from Console Root, navigate to Certificates (Local Computer) -> Personal -> Certificates You're certificate will most likely be here. Right click on your certificate -> All Tasks -> Manage Private Keys Set you're private key settings here. Add app pool account Reset iis