#1, Work Processes sandbox solution uses
Execution Manager: Loading and execution of sandboxed solution code
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\UserCode
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\CONFIG\wss_usercode.config
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\UserCode\assemblies
#2, Object model that subset proxy exposes:
■ All of the Microsoft.SharePoint namespace, except SPSite constructor SPSecurity object SPWorkItem and SPWorkItemCollection objects SPAlertCollection.Add method SPAlertTemplateCollection.Add method SPUserSolution and SPUserSolutionCollection objects SPTransformUtilities object Microsoft.SharePoint.Navigation namespace ■ All of the Microsoft.SharePoint.Utilities namespace, except SPUtility.SendEmail method SPUtility.GetNTFullNameandEmailFromLogin method
■ Microsoft.SharePoint.Workflow namespace
■ All of the Microsoft.SharePoint.WebPartPages namespace, except
SPWebPartManager object SPWebPartConnection object WebPartZone object WebPartPage object ToolPane object ToolPart object
#3, CAML elements can be used in declarative solutions:
ContentType CustomAction Field ListInstance ListTemplate Module PropertyBag Receivers WebTemplate WorkflowActions WorkflowAssociation
#4, List all blocked APIs in a farm:
SPWebServiceCollection webServices = new SPWebServiceCollection(SPFarm.Local); foreach (SPWebService service in webServices) { foreach (SPObjectModelType type in service.RestrictedObjectModel.RestrictedTypes) { Console.WriteLine(type.FullName); } }