Upload
ivan-sanders
View
483
Download
4
Tags:
Embed Size (px)
DESCRIPTION
SharePoint is an awesome development platform, but it was hard for developers to quickly understand SharePoint development because it required knowledge of SharePoint architecture and infrastructure. Changes have been made in SharePoint 2010 but more importantly Visual Studio 2010 to improve the development experience familiar for ASP.NET developers like easy deployment and debugging of your SharePoint applications and designers for building different types of SharePoint customizations.
Citation preview
SharePoint Server 2010 a ASP.NET Developer Platform
Ivan Sanders
SharePoint MVP, Architect DeveloperDimension Solutions inc.
Agenda
SharePoint Basics Packaging and Deployment Common Artifacts Remote Applications Demo
InfoPath FormList DefinitionsEvent ReceiversWork Flow
SharePoint Basics
SharePoint.NET
Why SharePoint?
Data Storage
Presentation
Security
Clustering
API’s
Office Integration
Features
Data Storage
Presentation
Security
Clustering
API’s
Office Integration
Features
Custom Development
Custom
Out of the Box
SharePoint Terminology
Farm
Feature
Solution PackageEvent Receiver
Web Application
Web Part
Site Definition
CAML
Feature Receiver
Central Administration
Declarative Workflow
Client Object Model
Timer Job
List Definition
List Instance
Content Database
Content Type
Persisted Object
Site ColumnSite Collection
Elevated Privileges
Theme
Application Page
Safe Control
Scope
ONET
Publishing Page
Field Control
Layout Page
Team SiteList View
STSADM
Server Farm
Web Application
SharePoint Architecture
Site Collection
Web
Web Parts Features Content Types
Site Columns
UserSolutions
Features Lists Views
ContentDatabase
Workflows Themes
Templates
Layouts Alerts
Databases SolutionsService
ApplicationsAlternate Access
Monitoring Security Policies
Providers File Types ThrottlingManaged
PathsService
Connections Quotas Permissions
Server Farms A collection of SharePoint role
servers and a SQL database server
Servers can perform one or more functions (web front end, search, application, etc.)
Farm-level features are managed via Central Administration
Custom code can be deployed at the Farm level and managed centrally
Solution Packages allow custom code to be automatically deployed across the farm
Server FarmWeb Front Ends
Application
Database
Web Applications and Site Collections
Web application = IIS Virtual Server
Each web application may be assigned its own app pool
Web applications may utilize multiple service applications
Site collections reside within web applications
Site collection functionality derived from underlying site definition
Special site collection types include My Sites, Shared Services Provider, Publishing Web
Portal
MySites
Central Administration
HR
Finance
Marketing
Packaging and Deployment
Solution Packages
Solution Packages are “bundles” of functionality deployed to the farm or site collection (sandbox)
May contain one or more Features, assemblies, pages, controls, and other artifacts
SharePoint framework handles installation and configuration of solution items automatically across entire farm
Automated packaging and deployment in Visual Studio 2010
WSP
MappedFolders
Assemblies
Web Parts
Sandbox Solutions
Trusted solutions which run in isolated process
Load balanced execution Uploaded to solution
directory in site collection Administratively controlled
via quotasCan be automatically disabled
Subset of OM functionality Ability to use trusted proxy
for restricted operations
Full Object Model
Subset Object Model
MyWebPart.dll
Proxy
Runtime
Features A ‘Feature’ is a defined set of
functionality encapsulated within a specific format
Features are the basic building block of WSS v3 and MOSS development
Features may be comprised of any combination of code, including web parts, workflows, and site definitions
Features may be deployed manually or automatically on a local or global basis
Features are heavily dependent on CAML
Solution
Feature
XML
Receiver
Assembly
Project Item
Web Part Template Workflow
Packaging and Deployment
DEMO
Common Tools Common Artifacts
DEMO
SharePoint 2010 Development Development on Windows 7 or
Vista x64 Visual Studio 2010 Support
SharePoint Explorer SharePoint Project and Item
Templates Visual Designers for Common
Scenarios F5 Debugging Packaging Support (.wsp)
Developer Dashboard Sandbox Solutions Client Object Model
Silverlight .NET ECMA Script
Windows 7 Development Desktop
DEMO
Web Parts
Web Parts are a specific type of server control that inherit from System.Web.UI.WebPart
Web Parts contain discreet functionality that is exposed to the user in the context of a Web Part Page
Classic Web Parts do not have an IDE; Visual Web Parts host ASP.NET User Controls
Web Parts execute in the context of the current user
Web Parts may be deployed individually or in conjunction with other artifacts
Page
Form
Web Part
Controls
Web PartManager
Building an InfoPath Form
DEMO
List Elements, Types and Views
Lists are virtual data repositories for unstructured content Fields defined by associated content types and user-
defined columns Common lists types included OOTB
Custom list types may be created in UI or code List data is stored in the content database associated
with the site collection Maximum limit for list items is 30M+
Be aware of performance implications and throttling when storing/retrieving large amounts of list data
Lists have associated views defined in UI or CAML Custom field types may be created programmatically
Event Receivers Event Receivers are handler assemblies
that respond to events on specific objects (Webs, Lists, Features, etc.)
Event receivers override built-in methods: Adding/Added Updating/Updated Activated/Deactivated Installing/Uninstalling
Event Receivers have no UI or user feedback mechanism
Event Receivers must run with Full Trust in the GAC
Item Adding
ContentDatabase
Code
Item Added
Code
Creating a List Definition and Attaching an Event Receiver
Creating a List Definition and Attaching an Event Receiver
DEMO
.NET framework version
SharePoint 2010 has a dependency on .NET 3.5 Workflows in SharePoint Server 2010 are *not* WF 4.0
Workflows .NET Framework release schedule doesn’t align with
SharePoint Server 2010Would have delayed SharePoint Server 2010 significantly to take a
dependency on WF 4.0
Workflow SharePoint Workflow inherits and builds
upon Windows Workflow Foundation (WF) Simple workflows can be created in
SharePoint Designer, advanced workflows require Visual Studio
Two types of workflow – Sequential and State Machine
User interaction provided via InfoPath forms or custom ASPX pages
Workflows are tied directly to lists and list items
Built-in history, tasks, and tracking mechanisms
File system
SPD Workflow Import SPD has a new reusable declarative Workflow template Once deployed it can be saved to a template (.wsp) Template can be imported into Visual Studio 2010 and modified
WSP
Deploy Package
Save to File System Create New ProjectImport WSP
NEW!
SPD Workflow Export and Visual Studio 2010
DEMO
Q & A
Who can you trust??The blogs I trust through all of the noise.
Maurice Prather http://www.bluedoglimited.com/default.aspx Andrew Connell http://www.andrewconnell.com/blog Spence Harbarhttp://www.harbar.net Jim Duncan Heather Solomon http://www.heathersolomon.com/blog Todd Klindt http://www.toddklindt.com/default.aspx Todd Baginski http://www.toddbaginski.com/blog Todd Bleeker http://bit.ly/edlSm5
Jan Tielens http://weblogs.asp.net/jan Patrick Tisseghem http://www.u2u.info/Blogs/Patrick/default.aspx Wictor Wilen http://www.wictorwilen.se Ted Patisson http://blog.tedpattison.net/default.aspx Lars Fastrup http://www.fastrup.net Carsten Keutmann http://keutmann.blogspot.com Keith Richie http://blog.krichie.com Bill Baer http://blogs.technet.com/b/wbaer