Upload
therobmandotnet
View
223
Download
0
Embed Size (px)
Citation preview
8/2/2019 Intro to Share Point 2010 for Developers
1/36
Introduction to
SharePoint
Development
for .NET developers
8/2/2019 Intro to Share Point 2010 for Developers
2/36
About me
Rob Wilson MCT, SharePoint MCTS/MCITP
SharePoint 200320072010
Email: [email protected] Twitter: @theRobManDotNet
Blog(s):
http://sharepointblog.kellerschroeder.com
http://www.therobman.net/blog
mailto:[email protected]://sharepointblog.kellerschroeder.com/http://www.therobman.net/bloghttp://www.therobman.net/bloghttp://sharepointblog.kellerschroeder.com/mailto:[email protected]8/2/2019 Intro to Share Point 2010 for Developers
3/36
Agenda
Introduction to SharePoint Platform
Overview of SharePoint Development Tools
.NET Development Environment for SharePoint
Visual Studio Solutions for SharePoint 2010
SharePoint 2010 Solution Architectures
Some New SharePoint 2010 Features
8/2/2019 Intro to Share Point 2010 for Developers
4/36
The SharePoint Platform
SharePoint Foundation 2010 (f.k.a. WSS 3.0)
SharePoint Server 2010 (f.k.a. MOSS 2007)
Why should Idevelop on a
platform?
Whichedition is
right for me?
8/2/2019 Intro to Share Point 2010 for Developers
5/36
Why Platforms?
Authentication
Menus
Authorization
Content Management
Error Handling
Business Apps
Custom Code
Authentication
Menus (Menu Control)
Authorization
Error Handling
Business Apps
MVC Framework
Uniformity
Separation of Roles
Standards-Based
SEO Friendly
RAD
Platform
Business AppsMuch Other Stuff
Search
Administration Area
Authentication
Menus
Authorization
Error Handling
Content Management
Uniformity
Separation of RolesStandards-Based
SEO Friendly
RAD
Administration Area
Search
10-15% of the effort.Lost projects because
of one-time costs.
Significant costreduction andstandardization.
8/2/2019 Intro to Share Point 2010 for Developers
6/36
When the requirements
call for it Not a brochure site
Authentication and search required Does not have to be a large-scale project
No-brainer for most intranets
8/2/2019 Intro to Share Point 2010 for Developers
7/36
When you need self-service
Web Parts (re-usability)
Subscriptions and alerts
RSS Recycle Bin
My Site
Connecting with peers
Publishing
8/2/2019 Intro to Share Point 2010 for Developers
8/36
When you need
personalization/socialization From a webmasters perspective
Targeted content
From a visitors perspective
Ability to customize look and feel
Tagging and newsfeeds
Organizational chart and peer suggestions
8/2/2019 Intro to Share Point 2010 for Developers
9/36
When you need workflow
Based on Workflow Foundation
In addition:
SharePoint front-end
Document libraries and task lists
Workflow history lists
8/2/2019 Intro to Share Point 2010 for Developers
10/36
When you want flexible
development options
Web Parts
Object model
Client object model (managed code,JavaScript, SilverLight)
Web services
Separation of development roles GUI expert, workflow developer, reports and
queries, event handlers
Varying levels of experience on a project team
8/2/2019 Intro to Share Point 2010 for Developers
11/36
When you want focus on
the business requirements
Do not worry about how someone will findyour application or how it integrates with thesecurity model
Eliminate the headache of external contentrepositories
8/2/2019 Intro to Share Point 2010 for Developers
12/36
When you want consistency
in your support footprint
Common user interface
Vocabulary
Standardized code base
8/2/2019 Intro to Share Point 2010 for Developers
13/36
When you want to take
advantage of the inherent
features of the platform
Collaboration
Portal
Content Management
Search
Business Intelligence
Forms and Business Processes
8/2/2019 Intro to Share Point 2010 for Developers
14/36
When you want to offset
the cost of development More time spent in the planning and design
stages should surface more out-of-the-box
features [that should save time later]
Out-of-the-box features should reduce thecost of custom software development
Developer focus should shift immediately tothe business needs and extending the out-of-the-box features
8/2/2019 Intro to Share Point 2010 for Developers
15/36
When you need SOA
Rest API expose SharePoint content
Use the object model to create your own webservices/WCFs
8/2/2019 Intro to Share Point 2010 for Developers
16/36
When you need composite
applications Dashboards, Mash-ups
Business Connectivity Services All levels of your organization
8/2/2019 Intro to Share Point 2010 for Developers
17/36
When you need composite
applications
ERP
CRMLegacy
SystemsMiddleware
BeforeSharePoint
8/2/2019 Intro to Share Point 2010 for Developers
18/36
When you need composite
applicationsERP
CRM
LegacySystems
SharePoint
8/2/2019 Intro to Share Point 2010 for Developers
19/36
When you need Single Sign On
Multiple built-in authentication options
Support for third-party authenticationproviders
Built-in SSO provider
Manages credentials for other apps on your
intranet
8/2/2019 Intro to Share Point 2010 for Developers
20/36
When you need off-line
support of your data
Office Integration
Importing/exporting lists from/to excel
Linked tables with Access Calendar/Task List integration with Outlook
Groove/SharePoint Workspace
8/2/2019 Intro to Share Point 2010 for Developers
21/36
When you need auditing and
retention policies Log just the events you need for what lists are
of interest to you
Develop auditing reports using SSRS
Develop/customize workflows for contentretention and disposal
8/2/2019 Intro to Share Point 2010 for Developers
22/36
When a development community
is important to you
Blogs and forums
Community video tutorials
User Groups
CodePlex
Commercial/Open Source Features and WebParts
8/2/2019 Intro to Share Point 2010 for Developers
23/36
http://www.tinyurl.com/sp2010editions
Editions
http://www.tinyurl.com/sp2010editionshttp://www.tinyurl.com/sp2010editions8/2/2019 Intro to Share Point 2010 for Developers
24/36
Overview of SharePoint
Development Tools
InfoPath 2010
smtp4dev
8/2/2019 Intro to Share Point 2010 for Developers
25/36
SharePoint Development
Environment for .NET SharePoint no longer required on
development machine in some cases, but
recommended
Virtual environment
64-bit is a must
RAM is your friend
8/2/2019 Intro to Share Point 2010 for Developers
26/36
Visual Studio Solutions
for SharePoint
Formerly 2
Gaps filled withCodePlex add-ons
Now 14 OOB
8/2/2019 Intro to Share Point 2010 for Developers
27/36
SharePoint Solution
Architectures
Object Model Web Services*Client Object
Model
Web Parts
Event Handlers
Workflows
Desktop Apps
* New Client Object Model for Managed .NET, Silverlight and ECMA Script
8/2/2019 Intro to Share Point 2010 for Developers
28/36
Feature Activated
8/2/2019 Intro to Share Point 2010 for Developers
29/36
Feature Deactivated
8/2/2019 Intro to Share Point 2010 for Developers
30/36
Client Object Model Files
Managed Client (CLR based) C:\Program Files\Common Files\Microsoft Shared\Web
Server Extensions\14\ISAPI Microsoft.SharePoint.Client (281 kb)
Microsoft.SharePoint.Client.Runtime (145 kb) FYI: Microsoft.SharePoint.dll is 15.3 mb
JavaScript Client C:\Program Files\Common Files\Microsoft Shared\Web
Server Extensions\14\Template\Layouts SP.js (380 kb) SP.Core.js (13 kb) SP.Runtime.js (68 kb)
8/2/2019 Intro to Share Point 2010 for Developers
31/36
Client Object Model Files
Silverlight Client
C:\Program Files\Common Files\MicrosoftShared\Web Server
Extensions\14\Template\Layouts\ClientBin Microsoft.SharePoint.Client.Silverlight (262 kb)
Microsoft.SharePoint.Client.Silverlight.Runtime
(138 kb)
8/2/2019 Intro to Share Point 2010 for Developers
32/36
Client Object Model
Allows you to write SharePoint applicationsthat run on different platforms w/o using webservices
Traditional .NET, Web/JavaScript andSilverlight developers can use familiar syntax
8/2/2019 Intro to Share Point 2010 for Developers
33/36
New Features
Ease of deployment Publish and run if SharePoint on local host
Package and deploy if SharePoint remote
Debugging Step through code if SharePoint on local host
Sandbox solutions
Allow applications to be deployed at the sitecollection level by a site collection administrator(as opposed to farm-level equivalent)
8/2/2019 Intro to Share Point 2010 for Developers
34/36
New Features
LINQ Support
No longer restricted to just CAML queries ifwriting server-based code
Create strongly typed SharePoint objects usingSPMetal utility
8/2/2019 Intro to Share Point 2010 for Developers
35/36
New Features
Dialog framework
External Lists
Looks and behaves like a SharePoint list
Stored in SQL Server or some other data source
8/2/2019 Intro to Share Point 2010 for Developers
36/36
For More Information
Hands On Labs:http://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enOr
http://bit.ly/sp2010hol
Developer Training Kit
http://bit.ly/sp2010devkit
MSDN Training Videos
http://www.mssharepointdeveloper.com
http://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://bit.ly/sp2010holhttp://bit.ly/sp2010devkithttp://www.mssharepointdeveloper.com/http://www.mssharepointdeveloper.com/http://bit.ly/sp2010devkithttp://bit.ly/sp2010devkithttp://bit.ly/sp2010devkithttp://bit.ly/sp2010holhttp://bit.ly/sp2010holhttp://bit.ly/sp2010holhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=enhttp://www.microsoft.com/downloads/details.aspx?FamilyID=c010fc68-b47f-4db6-b8a8-ad4ba33a35c5&displaylang=en