Deploying Code In SharePoint
Upcoming SlideShare
Loading in...5
×
 

Deploying Code In SharePoint

on

  • 5,794 views

How to deploy code in SharePoint. Given at SharePoint Saturday Kansas City - February 2009

How to deploy code in SharePoint. Given at SharePoint Saturday Kansas City - February 2009

Statistics

Views

Total Views
5,794
Views on SlideShare
5,772
Embed Views
22

Actions

Likes
1
Downloads
55
Comments
0

2 Embeds 22

http://www.slideshare.net 15
http://www.linkedin.com 7

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Demo manual deployment. Copy a binary out with a web part and manually copy DLL to the GAC.Demo how to export an existing .webpart definition to build from.
  • Explain the manifest.xml and cab.ddf
  • VSeWSS
  • Demo the use of BDC Tools, the MetaData Model and the Import Process

Deploying Code In SharePoint Deploying Code In SharePoint Presentation Transcript

  • Deploying Code in SharePoint
    Presenter: Corey Roth
    Senior Consultant
    Stonebridge
    Blog: www.dotnetmafia.com
  • Corey Roth
    Consultant for Stonebridge
    Worked in Consumer Electronics, Travel, Advertising, and Energy industries
    Currently doing MOSS development specializing in Enterprise Search, Workflow, and ECM
    Microsoft Award for Customer Excellence (ACE) Winner
    E-mail: corey.roth@gmail.com
    Blog: www.dotnetmafia.com (mirrored on sharepointblogs.com)
  • Challenges for New Developers
    Learning the API
    Setting up the development environment
    Debugging
  • Deployment
  • 12 Hive
    Location of most key SharePoint files: C:Program FilesCommon Filesmicrosoft sharedWeb Server Extensions12
  • 12 Hive (Continued)
  • Deploying Binaries – Two Options
    GAC Deployment – Not recommended unless absolutely necessary (i.e.: Event Recivers, Timer jobs, Workflows, etc).
    Requires application pool to be reset after every deployment.
    Allows code to execute with full trust
    Acceptable for new developers starting out because it is easier
  • Deploying Binaries – Two Options
    Bin Folder Deployment – Recommended but more complex
    Requires a developer to specify code access security settings or running SharePoint with full trust
    Does not require application pool to be reset
    Recommended approach but more complicated to implement
  • SafeControls
    SharePoint won’t execute a web part or user control unless it knows it is safe
    Declare an assembly and namespace safe in web.config
    SafeControls element
    Can be automated using a solution package (.wsp)
  • Deployment Options
    Manually copy binaries, feature files, pages, and controls to appropriate folders on SharePoint server
    Create a Feature – Would still have to manually copy files
    Create a Solution Package (.wsp) – A cab file that contains a manifest telling SharePoint how to deploy files and what features to install
  • Ghetto Deployment (Manual)
    Manually copy binaries to GAC or bin folder
    Manually upload .webpart files to web part gallery
    Manually copy user controls to CONTROLTEMPLATES folder
    Manually copy features files into FEATURES folder
    Manually copy anything else that you might need to deploy
  • Building and Deploying a Web Part
    Deploys similarly to a user control
    .webpart (or .dwp) file tells SharePoint where to find the web part’s code
    Use a feature to add the web part to the gallery
    Complete instructions at my blog
    http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2008/10/22/intro-to-sharepoint-development-how-to-build-and-deploy-a-web-part.aspx
  • Demo
  • Features
    A series of XML files that allow you to make changes to SharePoint
    Located in the TEMPLATEFEATURES folder in the 12 hive
    Changes can include creating lists, pages, content types, site columns, and web parts.
    Can copy files into SharePoint’s virtual file repository but the template files still have to be deployed to the 12 hive first
  • Solution Packages (.wsp files)
    A cab file that can copy binaries, features, pages, and other files to SharePoint.
    Defined by manifest.xml and cab.ddf files
    Created with makecab.exe
    Can copy binaries to bin folder or GAC
    Can apply safe control and code access security settings
    Automatically installs features
    Can also be upgraded and retracted / deleted.
    Can be automated with VSeWSS, WSPBuilder, stsdev, etc.
  • cab.ddf
    Specifies which files to copy into the wsp file.
    You must specify each binary, page, XML or .webpart file you want to be copied in this file
    Syntax for each file is source <space> destination
    The destination specified is the location in the file not the location on the SharePoint server.
  • Manfiest.xml
    Specifies which features to activate and which files to copy into the 12 hive.
    Can deploy SiteTemplates
    Specifies SafeControl settings in web.config
    Configures Code Access Security (CAS) settings
    Paths are relative to the TEMPLATES folder in the 12 hive
    http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2008/09/04/more-on-manfiest-xml.aspx
  • Manfiest.xml Elements
    FeatureManifests – Specifies feautres to activate
    TemplateFiles – Required for any file that you want copied that is not a binary or feature file
    Assemblies – Required for each binary to be deployed
    DeploymentTarget – WebAppplication or GlobalAssemblyCache
    SafeControls – Adds SafeControl entry to web.config
    CodeAccessSecurity – Applies CAS policies to assembly
  • Deploying your solution (.wsp) file
    Add the solution with stsadm
    stsadm –o addsolution –filename mysolution.wsp
    Deploy the solution with stsadm or Central Admin -> Solution Management
    stsadm –o deplysolution –name mysolution.wsp –immediate –allowGacDeployment –allowCasPolicies
    stsadm –o execadmsvcjobs
    -o upgradesolution – Upgrades an existing solution’s files
    -o retractsolution – Remove the solution from a given site(s)
    -o deletesolution – Removes the solution from the solution store
  • Building a User Control with Visual Studio
    Web Application Project
    Reference Microsoft.SharePoint.dll
    Must be registered as safe for SharePoint to execute
    Typically deployed to bin folder using Code Access Security
    Controls are typically deployed to the CONTROLTEMPLATES folder in the 12 hive.
    _ControlTemplates Virtual Directory
    Complete instructions are on my blog
    http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2008/11/18/introduction-to-sharepoint-development-deploy-a-user-control-in-sharepoint.aspx
  • Demo
  • Demo
  • References
    Dot Net Mafia Blog
    http://www.dotnetmafia.com
    Visual Studio Extensions for SharePoint (VSeWSS 1.3) CTP
    https://connect.microsoft.com/site/sitehome.aspx?SiteID=428
    STSDev
    http://www.codeplex.com/stsdev
    SharePoint Blogs
    http://www.sharepointblogs.com
    WSPBuilder
    http://www.codeplex.com/wspbuilder
  • Questions?
  • Thanks
    Corey Roth
    coreyroth@gmail.com
    www.dotnetmafia.com