I tried to do a mapping on how the SharePoint 2010 server-side customization can be mapped to SP 2013 App Model, here is the list below.
No | SP 2010 Farm Solution | SP 2013 App Model |
1 |
Alternate CSS in hive |
Apps cannot deploy files to SharePoint’s root files/hive. Instead, css can be deployed to SharePoint using a module or app installed event |
2 |
Alternate CSS in Module |
Apps cannot deploy files to SharePoint’s root files/hive. Instead, css can be deployed to SharePoint using a module or app installed event |
3 | Application Page |
Apps cannot deploy files to SharePoint’s root files/hive, which includes the layouts folder. As an alternative, web part pages can be deployed through a module or app installed event receiver |
4 | Custom Column |
Declarative columns can only be deployed to the app web. To deploy columns to Host Web leverage App Installed Event |
5 | Content Type |
Declarative content types can only be deployed to the app web. To deploy content types to App Web leverage App Installed Event |
6 | Custom Action | Apps support specific types of custom actions, including ribbon commands and context menus in both the app web and host web. |
7 | Delegate Control |
Apps for SharePoint do not support delegate controls. Add custom HTML snippet to the Master Page to achieve the effect of delegate controls |
8 | Feature Receiver |
Apps have remote events for “App Installed”, “App Uninstalling”, and “App Upgraded”. All of these can be used in a similar way to feature receivers in farm solutions. |
9 | Feature Stapling |
Apps can be “stapled” through the app catalog, leverage the concept of App Stapling |
10 | Images (in hive) |
Apps cannot deploy files to SharePoint’s root files/hive. Instead, images can be deployed to SharePoint using a module or app installed event |
11 | List definition |
Apps can deploy custom list definitions, but only to the app web and not the host web |
12 | List Event Receiver |
Leverage Remote Event Receivers to address on-premise List Event Receivers for Cloud |
13 | List Instance |
Declarative list instances can only be deployed to the app web and not the host web. ` |
14 |
Master Page (in hive) |
Apps cannot deploy files to SharePoint’s root files/hive. Instead, master pages can be deployed to SharePoint using a module or app installed event |
15 |
Master Page (Module) |
Apps can use modules to deploy master pages to SharePoint, but only to the app web…not the host web. Leverage app installed event can be used to deploy a master page to a host web |
16 | Module |
Apps can leverage modules to declaratively deploy files into SharePoint |
17 |
Script (in hive) |
Apps cannot deploy files to SharePoint’s root files/hive. Instead, script can be deployed to SharePoint using a module or app installed event |
18 | Search Configuration | Apps for SharePoint can be used to consistently and efficiently deploy a search configuration to a number of sites |
19 | Site Definition |
Site definitions deploy files into SharePoint’s root files/hive, which is not a capability of apps for SharePoint |
20 | Timer Jobs |
Timer Jobs cannot be addressed in App Model |
21 |
User Controls (Control Templates |
Apps cannot deploy user controls to SharePoint hive, consider other alternatives |
24 | Webpart | Apps can deploy App Parts to SharePoint |
25 | Web Part Page | Leverage App Installed event to provision a web part page to the Host Web. However for App Web, leverage Modules. |
26 | Web Template | Web Templates can be installed to the host web’s site collection root using the App Installed event |
27 | Workflow | Workflow is supported in SP 2013 App Model |
28 | Workflow Activity | Workflow activity is supported in SP 2013 App Model |