SlideShare a Scribd company logo
Becky Bertram
SharePoint MVP
http://blog.beckybertram.com
@beckybertram
VS 2008 with SP2010
VS 2010 with SPS 2010
 Solution Package framework has not changed from
SharePoint 2007 to SharePoint 2010
 You can develop a SharePoint 2010 solution package
with Visual Studio 2008, it’s just a lot more work.
 You can develop a SharePoint 2007 solution package
with Visual Studio 2010, but you won’t be using the
built-in tools. You’d use the same manual techniques
you would in VS 2008.
SP Dev 101: Solutions and Solution Packages
 SharePoint has some assets which reside in the
database, other assets on the file system (XML files,
ASPX pages, DLL’s, etc.)
 SharePoint is scalable, which means it has load
balanced servers.
 Assets that were deployed to one server need to be
deployed to all load balanced servers.
 Solution packages allow the systematic deployment
and retraction of assets.
 Solution packages are simply CAB files with a WSP
extension.
SP Dev 101: Solution Package Events
 Solution Packages must first be added to the Solution
Store so that SharePoint knows they’re available.
 This can only be done via PowerShell.
 You can add a solution package using the stsadm –o
addsolution command.
 From there, you can deploy a Solution Package, either
through the browser or through PowerShell.
 Packages are deployed globally (which means they are
available in the whole farm) or to one or more Web
applications.
 Packages can be retracted, and then removed.
SP Dev 101: Solution Manifest
 The Solution Manifest file is an XML file that tells
SharePoint where to place files on the file system.
 Whether assemblies should go in the bin directory in
the web application folder or in the GAC.
 If certain DLL’s should be declared “safe” so that
SharePoint will permit their execution in the browser.
 Where assets should be placed in the “14 hive”.
 Which features are being deployed as a part of the
Solution.
 Whether the Web server should be reset when the
package is installed.
SP Dev 101: Sample Manifest
<?xml version="1.0" encoding="utf-8" ?>
<Solution xmlns="http://schemas.microsoft.com/sharepoint/" SolutionId="c155b5f5-94cb-4044-9944-
95e504c15b99" SharePointProductVersion="14.0">
<Assemblies>
<Assembly Location="MyFirstFeature.dll" DeploymentTarget="GlobalAssemblyCache">
<SafeControls>
<SafeControl Assembly="MyFirstFeature, Version=1.0.0.0,
Culture=neutral,
PublicKeyToken=51d041b4f66380dc“
Namespace="MyFirstFeature.MyFirstWebPart"
TypeName="*" />
</SafeControls>
</Assembly>
</Assemblies>
<TemplateFiles>
<TemplateFile
Location="CONTROLTEMPLATESMyFirstFeatureMyFirstWebPartMyFirstUserControl.ascx" />
</TemplateFiles>
<FeatureManifests>
<FeatureManifest Location="MyFirstFeature_MyFirstFeatureFeature.xml" />
</FeatureManifests>
</Solution>
Farm vs. Sandboxed Solutions
 Farm Features can only be deployed by an
administrator. Farm features generally run in the IIS
worker process (w3wp.exe)
 Sandboxed solutions can be uploaded and deployed by
a Site Collection administrator. These solutions can
use a limited API that prevents access of objects above
the Site Collection level. Sandboxed solutions run in
their own process (SPUCWorkerProcess.exe)
SP Dev 101: Features
 A Feature is a unit of functionality in SharePoint.
 The set of functionality contained in the feature
becomes available when it’s activated.
 Features can be activated in the browser or using
PowerShell.
 Features have a particular scope (Farm, Web
application, Site Collection, or Web site) and can be
reused in that scope.
 Features can have dependencies on other Features.
SP Dev 101: Feature Event Receivers
 Events are fired for the following 5 events in a Feature’s
“life”:
 Installed
 Activated
 Uninstalling
 Deactivating
 Upgrading
 Each of these has a corresponding event receiver.
 The “-ing” receivers hand the event before the event,
and the “-ed” receivers hand the event after the event.
Feature Upgrading
 New to SharePoint 2010, you can tell SharePoint to
carry out certain actions when upgrading a Feature to a
newer version of that Feature.
 Includes adding additional fields to a Content Type
 Executing particular code (making note of the fact that
the code will execute as the SharePoint System account.)
SP Dev 101: Feature Manifest
 The Feature Manifest is an XML file that tells
SharePoint which files on the file system are a part of
the Feature, as well as information about the Feature
itself, such as:
 Name
 Scope
 Activation Dependencies
 Upgrade actions
 Feature Event Receiver assembly and class
 Language Resource Files
SP Dev 101: Sample Feature Manifest
<?xml version="1.0" encoding="utf-8" ?>
<Feature xmlns="http://schemas.microsoft.com/sharepoint/"
Title="My First Feature"
Description="This Feature deploys a Web Part to the Web Part Gallery."
Id="f6e83dea-5146-43c3-af18-d9aecb9f4a7c"
Scope="Site">
<ElementManifests>
<ElementManifest Location="MyFirstWebPartElements.xml" />
<ElementFile Location="MyFirstWebPartMyFirstWebPart.webpart" />
</ElementManifests>
</Feature>
SP Dev 101: Declarative vs. Imperative Programming
 Declarative: using XML configuration files to tell
SharePoint what to provision
 Field, Content Type, List Definition, List Instance,
Module, etc.
 Imperative: using the SharePoint API to execute
commands at a given point in time
 SPField, SPContentType, SPList, SPListItem, etc.
VS 2010: Microsoft SharePoint
Development Tools
Included with
Visual Studio 2010
VS 2010 Project Item Templates
 Web Part
 Sequential Workflow
 State Machine Workflow
 Business Data Connectivity Model
 Application Page
 Event Receiver
 List Definition
 List Definition from Content Type
 List Instance
 Content Type
 Module
 Empty Element
 User Control
 Import Reusable Workflow
 Import SharePoint Solution Package
VS 2010 Project Item Templates
Demo: Creating a Feature and
Solution Package using Visual
Studio 2010

More Related Content

PPTX
Microsoft Graph
PPTX
Core SharePoint 2013 Concepts
PPTX
Share point 2010-uiimprovements
PPTX
Microsoft Graph API - A Single Stop For Your Cloud Solution
PPTX
Introduction to sharepoint 2010
PPTX
Share Point For Beginners V1
PPSX
Microsoft SharePoint 2010 Overview Session 1
PPTX
SharePoint Saturday Sacramento Business Intelligence with SharePoint 2010
Microsoft Graph
Core SharePoint 2013 Concepts
Share point 2010-uiimprovements
Microsoft Graph API - A Single Stop For Your Cloud Solution
Introduction to sharepoint 2010
Share Point For Beginners V1
Microsoft SharePoint 2010 Overview Session 1
SharePoint Saturday Sacramento Business Intelligence with SharePoint 2010

What's hot (20)

PPTX
Introduction To SharePoint 2010
PPTX
Sharepoint 2010 overview - what it is and what it can do
PDF
Configure SharePoint Server 2013 in a Three-Tier Farm
PPTX
Share point 2013
PPTX
SharePoint 2010 - What's New?
PPTX
Microsoft Teams Graph API
PPTX
SharePoint Saturday NYC - Business Intelligence
PPTX
SharePoint 2013 Sneak Peek
PPTX
SharePoint 2013 App Provisioning Models
PPTX
SharePoint and Azure - A Match Made in the Clouds
PPTX
Chris givens building custom service applications
PPT
Web Page Composer Webinar
PPTX
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...
PPTX
From Event Receivers to SharePoint Webhooks (SPS Lisbon 2017)
PPT
10 Ways SharePoint 2010 Will Impact your Notes Migration
PDF
Microsoft SharePoint 2013 Overview from Atidan
PPTX
Microsoft Office Delve
PPTX
Jordan Remix - SharePoint 2010
PPTX
Sharepoint 2013 upgrade process
PPTX
Planning the Death Star with Microsoft Planner
Introduction To SharePoint 2010
Sharepoint 2010 overview - what it is and what it can do
Configure SharePoint Server 2013 in a Three-Tier Farm
Share point 2013
SharePoint 2010 - What's New?
Microsoft Teams Graph API
SharePoint Saturday NYC - Business Intelligence
SharePoint 2013 Sneak Peek
SharePoint 2013 App Provisioning Models
SharePoint and Azure - A Match Made in the Clouds
Chris givens building custom service applications
Web Page Composer Webinar
SharePoint Intelligence Extending Share Point Designer 2010 Workflows With Cu...
From Event Receivers to SharePoint Webhooks (SPS Lisbon 2017)
10 Ways SharePoint 2010 Will Impact your Notes Migration
Microsoft SharePoint 2013 Overview from Atidan
Microsoft Office Delve
Jordan Remix - SharePoint 2010
Sharepoint 2013 upgrade process
Planning the Death Star with Microsoft Planner
Ad

Viewers also liked (12)

PPTX
The Hagaddah: An approach for Jewish leaders
PPTX
Analyzing a system and specifying the requirements
PPTX
Whats New In 2010 (Msdn & Visual Studio)
PDF
Code understanding and systems design with visual studio 2010
PPTX
Overview of Visual Studio Team System 2010
PPTX
Full Testing Experience - Visual Studio and TFS 2010
PPTX
Chapter 2 — Program and Graphical User Interface Design
PPT
A Lap Around Visual Studio 2010
PPTX
Software requirement and specification
PPTX
Chapter 1 — Introduction to Visual Basic 2010 Programming
PDF
Time Table Management System
PPTX
Structured Vs, Object Oriented Analysis and Design
The Hagaddah: An approach for Jewish leaders
Analyzing a system and specifying the requirements
Whats New In 2010 (Msdn & Visual Studio)
Code understanding and systems design with visual studio 2010
Overview of Visual Studio Team System 2010
Full Testing Experience - Visual Studio and TFS 2010
Chapter 2 — Program and Graphical User Interface Design
A Lap Around Visual Studio 2010
Software requirement and specification
Chapter 1 — Introduction to Visual Basic 2010 Programming
Time Table Management System
Structured Vs, Object Oriented Analysis and Design
Ad

Similar to SharePoint 2010 Tools in Visual Studio 2010 (20)

PPT
Best practices for share point solution deployment
PPTX
Full Trust Solution Development in SharePoint 2013
PPTX
Using Visual Studio to Build SharePoint 2010 Solutions
PPTX
Thoughts on building deployable and updatable share point solutions
PPTX
SharePoint Development 101
PPTX
SharePoint 2010 Development for ASP.NET Developers - SharePoint Saturday Hous...
PPTX
Share point development 101
PPTX
SharePoint for ASP.Net Developers
PPTX
SharePoint Development For Asp Net Developers
PPT
Best Practices Configuring And Developing Share Point Solutions
PPTX
SharePoint Connections Coast to Coast Migrating SharePoint 2007 Solutions to ...
PPT
4 tools, sandboxed solutionds, web part development
PPTX
Deploying Code In SharePoint
PDF
AvePoint - SharePoint App Lifecycle Mgmnt
PPTX
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
PPTX
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
KEY
Anatomy Of A Share Point Solution
PPTX
SharePoint 2013 Sandbox Solutions for On Premise or Office 365
PDF
SharePoint 2010 101 @ SPSVB
PPTX
SharePoint 2010 Development for ASP.NET Developers - Tyson Devcon 2010
Best practices for share point solution deployment
Full Trust Solution Development in SharePoint 2013
Using Visual Studio to Build SharePoint 2010 Solutions
Thoughts on building deployable and updatable share point solutions
SharePoint Development 101
SharePoint 2010 Development for ASP.NET Developers - SharePoint Saturday Hous...
Share point development 101
SharePoint for ASP.Net Developers
SharePoint Development For Asp Net Developers
Best Practices Configuring And Developing Share Point Solutions
SharePoint Connections Coast to Coast Migrating SharePoint 2007 Solutions to ...
4 tools, sandboxed solutionds, web part development
Deploying Code In SharePoint
AvePoint - SharePoint App Lifecycle Mgmnt
SoCalCodeCamp SharePoint Server 2010 a Developer Platform
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
Anatomy Of A Share Point Solution
SharePoint 2013 Sandbox Solutions for On Premise or Office 365
SharePoint 2010 101 @ SPSVB
SharePoint 2010 Development for ASP.NET Developers - Tyson Devcon 2010

More from Becky Bertram (11)

PPTX
Introduction to Communication Sites
PPTX
How do i connect to that
PPTX
SharePoint and Open XML
PPTX
SharePoint Publishing 101
PPTX
Help! I've got a share point site! Now What?
PPTX
Developing retention rules that work
PPTX
My First SharePoint Online PowerApp
PPTX
So you’re building an intranet
PPTX
Microsoft Exam 70-331 Exam Cram Study Guide
PPTX
Exam Cram for 70-488: Developing Microsoft SharePoint Server 2013 Core Solutions
PPTX
Social Features of SharePoint 2013: Enhancing Productivity
Introduction to Communication Sites
How do i connect to that
SharePoint and Open XML
SharePoint Publishing 101
Help! I've got a share point site! Now What?
Developing retention rules that work
My First SharePoint Online PowerApp
So you’re building an intranet
Microsoft Exam 70-331 Exam Cram Study Guide
Exam Cram for 70-488: Developing Microsoft SharePoint Server 2013 Core Solutions
Social Features of SharePoint 2013: Enhancing Productivity

Recently uploaded (20)

PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPT
Teaching material agriculture food technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Modernizing your data center with Dell and AMD
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Electronic commerce courselecture one. Pdf
PDF
cuic standard and advanced reporting.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Big Data Technologies - Introduction.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Teaching material agriculture food technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Empathic Computing: Creating Shared Understanding
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
“AI and Expert System Decision Support & Business Intelligence Systems”
Dropbox Q2 2025 Financial Results & Investor Presentation
Understanding_Digital_Forensics_Presentation.pptx
Modernizing your data center with Dell and AMD
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Electronic commerce courselecture one. Pdf
cuic standard and advanced reporting.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Encapsulation_ Review paper, used for researhc scholars
Advanced methodologies resolving dimensionality complications for autism neur...
Big Data Technologies - Introduction.pptx
The AUB Centre for AI in Media Proposal.docx
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Diabetes mellitus diagnosis method based random forest with bat algorithm

SharePoint 2010 Tools in Visual Studio 2010

  • 2. VS 2008 with SP2010 VS 2010 with SPS 2010  Solution Package framework has not changed from SharePoint 2007 to SharePoint 2010  You can develop a SharePoint 2010 solution package with Visual Studio 2008, it’s just a lot more work.  You can develop a SharePoint 2007 solution package with Visual Studio 2010, but you won’t be using the built-in tools. You’d use the same manual techniques you would in VS 2008.
  • 3. SP Dev 101: Solutions and Solution Packages  SharePoint has some assets which reside in the database, other assets on the file system (XML files, ASPX pages, DLL’s, etc.)  SharePoint is scalable, which means it has load balanced servers.  Assets that were deployed to one server need to be deployed to all load balanced servers.  Solution packages allow the systematic deployment and retraction of assets.  Solution packages are simply CAB files with a WSP extension.
  • 4. SP Dev 101: Solution Package Events  Solution Packages must first be added to the Solution Store so that SharePoint knows they’re available.  This can only be done via PowerShell.  You can add a solution package using the stsadm –o addsolution command.  From there, you can deploy a Solution Package, either through the browser or through PowerShell.  Packages are deployed globally (which means they are available in the whole farm) or to one or more Web applications.  Packages can be retracted, and then removed.
  • 5. SP Dev 101: Solution Manifest  The Solution Manifest file is an XML file that tells SharePoint where to place files on the file system.  Whether assemblies should go in the bin directory in the web application folder or in the GAC.  If certain DLL’s should be declared “safe” so that SharePoint will permit their execution in the browser.  Where assets should be placed in the “14 hive”.  Which features are being deployed as a part of the Solution.  Whether the Web server should be reset when the package is installed.
  • 6. SP Dev 101: Sample Manifest <?xml version="1.0" encoding="utf-8" ?> <Solution xmlns="http://schemas.microsoft.com/sharepoint/" SolutionId="c155b5f5-94cb-4044-9944- 95e504c15b99" SharePointProductVersion="14.0"> <Assemblies> <Assembly Location="MyFirstFeature.dll" DeploymentTarget="GlobalAssemblyCache"> <SafeControls> <SafeControl Assembly="MyFirstFeature, Version=1.0.0.0, Culture=neutral, PublicKeyToken=51d041b4f66380dc“ Namespace="MyFirstFeature.MyFirstWebPart" TypeName="*" /> </SafeControls> </Assembly> </Assemblies> <TemplateFiles> <TemplateFile Location="CONTROLTEMPLATESMyFirstFeatureMyFirstWebPartMyFirstUserControl.ascx" /> </TemplateFiles> <FeatureManifests> <FeatureManifest Location="MyFirstFeature_MyFirstFeatureFeature.xml" /> </FeatureManifests> </Solution>
  • 7. Farm vs. Sandboxed Solutions  Farm Features can only be deployed by an administrator. Farm features generally run in the IIS worker process (w3wp.exe)  Sandboxed solutions can be uploaded and deployed by a Site Collection administrator. These solutions can use a limited API that prevents access of objects above the Site Collection level. Sandboxed solutions run in their own process (SPUCWorkerProcess.exe)
  • 8. SP Dev 101: Features  A Feature is a unit of functionality in SharePoint.  The set of functionality contained in the feature becomes available when it’s activated.  Features can be activated in the browser or using PowerShell.  Features have a particular scope (Farm, Web application, Site Collection, or Web site) and can be reused in that scope.  Features can have dependencies on other Features.
  • 9. SP Dev 101: Feature Event Receivers  Events are fired for the following 5 events in a Feature’s “life”:  Installed  Activated  Uninstalling  Deactivating  Upgrading  Each of these has a corresponding event receiver.  The “-ing” receivers hand the event before the event, and the “-ed” receivers hand the event after the event.
  • 10. Feature Upgrading  New to SharePoint 2010, you can tell SharePoint to carry out certain actions when upgrading a Feature to a newer version of that Feature.  Includes adding additional fields to a Content Type  Executing particular code (making note of the fact that the code will execute as the SharePoint System account.)
  • 11. SP Dev 101: Feature Manifest  The Feature Manifest is an XML file that tells SharePoint which files on the file system are a part of the Feature, as well as information about the Feature itself, such as:  Name  Scope  Activation Dependencies  Upgrade actions  Feature Event Receiver assembly and class  Language Resource Files
  • 12. SP Dev 101: Sample Feature Manifest <?xml version="1.0" encoding="utf-8" ?> <Feature xmlns="http://schemas.microsoft.com/sharepoint/" Title="My First Feature" Description="This Feature deploys a Web Part to the Web Part Gallery." Id="f6e83dea-5146-43c3-af18-d9aecb9f4a7c" Scope="Site"> <ElementManifests> <ElementManifest Location="MyFirstWebPartElements.xml" /> <ElementFile Location="MyFirstWebPartMyFirstWebPart.webpart" /> </ElementManifests> </Feature>
  • 13. SP Dev 101: Declarative vs. Imperative Programming  Declarative: using XML configuration files to tell SharePoint what to provision  Field, Content Type, List Definition, List Instance, Module, etc.  Imperative: using the SharePoint API to execute commands at a given point in time  SPField, SPContentType, SPList, SPListItem, etc.
  • 14. VS 2010: Microsoft SharePoint Development Tools Included with Visual Studio 2010
  • 15. VS 2010 Project Item Templates  Web Part  Sequential Workflow  State Machine Workflow  Business Data Connectivity Model  Application Page  Event Receiver  List Definition  List Definition from Content Type  List Instance  Content Type  Module  Empty Element  User Control  Import Reusable Workflow  Import SharePoint Solution Package
  • 16. VS 2010 Project Item Templates
  • 17. Demo: Creating a Feature and Solution Package using Visual Studio 2010