Sharepoint 2013 Tutorials Sandboxed Solution example
This Sharepoint 2013 example is about sandboxed solutions.Sandboxed Solutions are SharePoint Solution Package files
(WSP files)Sand box soultions are limited in functionality and use limited
server resourses.
- The limited functionality of sandboxed solutions depend on process isolation and limited code access security of the sharepoint site.
- The resources used by sandboxed solutions are limited by process monitoring, logging and log aggregation.
- This tutorial shows you how you can go through the install of a sandboxed solution and how you can run something in the sandbox.
- The Visual Studio 2010 Tools for SharePoint 2010 provides a project template for the development of a sandboxed solution.
- A developer can develop sandboxed solutions using this templates.
Step 1 : Open Visual Studio 2010.
Create a new project for an event receiver. When the
creation wizard pops up, you have to specify the URL to your SharePoint site,
but you also have to indicate whether you want to create a sandboxed solution
or not.
Open the SampleSandboxedWebPart
project in Visual Studio 2010.
Select
the project in the Solution Explorer and look at the Properties window. The Sandboxed
Solution property is set to true in case of a sandboxed solution.The project has a property Sandboxed Solution that can be set to true. Based on this property
the environment controls the Intellisense to let you know what’s available to
you in a sandboxed solution.
Change this property to False.Open
the SampleSandboxedWebPart.cs
file.Place the cursor at the end of the CreateChildControls()
method and start entering SPSecurity.Run. Notice the Intellisense which means
that you are allowed to do this.
Remove the line of code again.In the project properties turn
the Sandboxed Solution property back
on.Return to the code and type SPSecurity.
But when you continue typing in SPSecurity, Intellisense will let you add RunWithElevatedPrivileges.
When a sandboxed solution is deployed, it is not deployed to
the farm solution store but to the Solution gallery on site collection level. The
web part doesn’t contain much functionality. It only displays a label
containing the current date and time.Right-click the project in Solution Explorer and choose Deploy. Open an internet browser and
navigate to the Site Settings page
of your SharePoint site.
From within here you can also upload sandboxed solutions via
the Upload button in the Solutions tab. Notice that you can also
activate and deactivate features within the solution here.Choose the Solutions
hyperlink in the Galleries section.
- A dialog opens where you can browse to the solution package.
- The dialog also displays a ribbon with an Activate button.Click it if you also want to activate the feature(s) inside the solution.
- Once the features activated, you can add the web part in a sandboxed solution to a SharePoint page.Return to the home page of your SharePoint site and turn it in Edit mode.You can find the web part in the Sandbox Sample category.Place it on the page
- Not everything is allowed when working with sandboxed solutions.
- You cannot deploy application pages for example.
- And when working with web parts, which is allowed in sandboxed solutions, there are certain things that you cannot do like running with elevated privileges.
- You will be able to upload such sandboxed solutions and you will be able to activate its features but the code will be blocked by the UserCode service, otherwise known as the sandbox.
- It’s the UserCode service that controls what is allowed and what not when running in a sandbox.
- Return to Visual Studio 2010 and open the BadSandboxWebPart from the starter files.
- This web part does something that is not allowed when working with sandboxed solutions.
- Open the BadSandboxWebPart.cs file to view the code. In sandboxed solutions you are not allowed to run with elevated privileges
- Upload the solution package to the Solution gallery. When it is uploaded, you can click the Activate button.
- SharePoint will not stop you from activating the features inside the sandboxed solution.
- When you try to add the web part to a SharePoint page in your site, you will find the web part in the Web Part gallery.
- When the web part is added to the page, an error message will be displayed that it couldn’t load the CodeToRunElevated type.
- When you have a number of sandboxed solutions running in your site collection, you will see that resource points are accumulated.
- Once the quota limit is reached, all sandbox solutions will stop running until the next day.
Go back to the Solutions
gallery and take a look at the resource quota.
Next to each sandboxed solution you will also see the
resource usage so that you can check which is a badly designed solution.
No comments:
Post a Comment