09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010...

37
09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung 11.45-12.45 Uhr Mittagspause 12.45-14.30 Uhr Application Lifecycle Management mit VS 2010 14.30-15.00 Uhr Pause 15.00-16.30 Uhr MOSS Development Prozess auf Basis von SPALM 16.30-17.00 Uhr Diskussion und Zusammenfassung

Transcript of 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010...

Page 1: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

09.30-10.00 Uhr Einleitung

10.00-11.45 Uhr SharePoint 2010 Entwicklung 11.45-12.45 Uhr Mittagspause

12.45-14.30 Uhr Application Lifecycle Management mit VS 2010

14.30-15.00 Uhr Pause

15.00-16.30 Uhr MOSS Development Prozess auf Basis von SPALM

16.30-17.00 Uhr Diskussion und Zusammenfassung

Page 2: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 3: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Agenda

• Pages and User Interface

• Data Search and Retrieval

• Dealing with External Data

• Visual Studio 2010 SharePoint Integration

• Solution Deployment

Page 4: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 5: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Pages and User Interface

• Teamsites as Wiki Pages

• New WebParts as ASCX + Visual WebPart

• New elements

− Ribbon

− Dialog Framework

• New technologies

− AJAX

− Silverlight 3.0

Page 6: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Ribbon and Dialog Framework• Client Site Custom Actions in Ribbon

• Context Sensitive Ribbon

Page 7: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Ribbon and Dialog FrameworkReplaceable SharePoint OOB forms

Open as Web Page or as Dialog

Page 8: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 9: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Silverlight 3 and SharePoint 2010New UI Option

• Media Player Web Part

• Organization Browser

• List and Site Creation

• Office Web Applications

• Silverlight Web Part− Simple way to upload

− Silverlight CLR compatible

• Client Object Model− Call SharePoint API’s

• REST APIs− Simplifies List data access

• Support for remotely hosted Silverlight applications− Delegated authentication/application principals

Page 10: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Developer Dashboard

stsadm -o setproperty -pn developer-dashboard -pv ondemand

Page 11: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 12: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Farm Site List Data External Lists

Client-side

Server-side

Strongly-typed

Weakly-typed lists

Strongly-typed lists

Weakly-typed lists

Client OM

REST APIs

New in 2010

Improved

Page 13: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Strongly-typed access to List Data on Server

• Entity based programming on the server

− SPMetal Code Generation Utility

− LINQ Queries

− Strong Types

• Translates LINQ queries into CAML queries

• Can be used in

− Web Parts, Event Receivers, Sandboxed code

Page 14: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Sample: Original LINQ query

from p in data.Projectswhere

p.Client.City == "Chicago"select new

{

Name = p.Title,

ClientName = p.Client.Title,

Budget = p.BudgetHours

};

Page 15: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Sample: Generated CAML Query

<Query>

<Where>

<And>

<BeginsWith>

<FieldRef Name="ContentTypeId" />

<ValueType="ContentTypeId">0x0100</Value>

</BeginsWith>

<Eq>

<FieldRef Name="ClientCity" />

<Value Type="Lookup">Chicago</Value>

</Eq>

</And>

</Where>

</Query>

<ViewFields>

<FieldRef Name="Title" />

<FieldRef Name="ClientTitle" />

<FieldRef Name="BudgetHours" />

</ViewFields>

<ProjectedFields>

<Field Name="ClientTitle" Type="Lookup"

List="Client" ShowField="Title" />

<Field Name="ClientCity" Type="Lookup"

List="Client" ShowField="City" />

</ProjectedFields>

<Joins>

<Join Type="LEFT" ListAlias="Client">

<!--List Name: Clients-->

<Eq>

<FieldRef Name="Client" RefType="ID" />

<FieldRef List="Client" Name="ID" />

</Eq>

</Join>

</Joins>

Page 16: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Sample: Original LINQ query

from tc in data.Timecardswhere

tc.Id == 4group tc by tc.WorkDate.Value.ToString("MM/yy") into tcs

select new

{

Month = tcs.Key,

Total = tcs.Sum(t => t.Hours)

};

Page 17: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Sample: Generated CAML Query

<Query>

<Where>

<And>

<BeginsWith>

<FieldRef Name="ContentTypeId" />

<ValueType="ContentTypeId">0x0100</Value>

</BeginsWith>

<Eq>

<FieldRef Name="ID" />

<Value Type="Counter">4</Value>

</Eq>

</And>

</Where>

</Query>

<ViewFields>

<FieldRef Name="StaffId" />

<FieldRef Name="WorkDate" />

<FieldRef Name="Hours" />

<FieldRef Name="Project" />

<FieldRef Name="ID" />

<FieldRef Name="owshiddenversion" />

<FieldRef Name="Title" />

</ViewFields>

<RowLimitPaged="TRUE">2147483647</RowLimit>

Page 18: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 19: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Unified Clients

• Unified object model across all clients

− JavaScript

− .NET CLR

− Silverlight CLR

• Subset of Server OM

− Webs, Lists, ListItems,

− Content Types, Fields

− etc.

Page 20: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Generally How It Works

Execute commands

in the batch:

Client.svcSequence of

commands:

context.ExecuteQuery();

command 1;

command 2;

command 3;

Send results back

command 1;

command 2;

command 3;

Process results

ServerClient Application

Page 21: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Client Object Model Sample .NET

ClientContext context =

new ClientContext http://server

Web site = context.Web;

context.Load(site);

context.ExecuteQuery();

site.Title = site.Title + " and Client OM";

site.Update();

context.ExecuteQuery();

Page 22: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 23: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Data Access TechnologiesDecision Matrix

Client OM Server OM REST LINQ

On SharePoint Server

On Remote Computer

Site / List Objects

Traverse Relationships

Calling Pattern (Direct)

Calling Pattern

(Callback)

Strongly-Typed

(Columns as Properties)

Page 24: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Dealing with External Data

• New Service Application: Business Connectivity Services

• Read/Write Access to WCF/SQL/OLEDB datasources

• Improved Tooling (SharePoint Designer, Visual Studio, Office Applications)

Page 25: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

ConnectivityBusiness Connectivity Services

DB

Connector

WCF/WS

Connector

.NET

Assembly

Connector

Custom

Connector

External data

BCS Server Runtime

Page 26: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

External Content Type (ECT)The building block• Superset of entity capabilities; describes:

− Structure of the external system (Fields, Methods, Connection)

− How this data behaves within SharePoint and Office

• Manage and reuse from a central location

• Added to the Business Data Connectivity service through:− SharePoint Designer

− Visual Studio 2010

− Import into the Business Data Connectivity service as part of a model

Page 27: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 28: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Workflow ImprovementsPopular and Successful Base in 2007

• Visual Studio 2010 Initiation and Association Forms

• New Workflow Design Surface in SPD

• Import SPD Workflows into Visual Studio

• Build SPD Actions in Visual Studio

• Visio 2010 Workflow Design

• Browser Based Visualization

• High Privilege Workflows

• Control Where Service Runs

• Site Workflows

• Reusable Declarative Workflows

• List Workflow Event Receivers

• Pluggable Workflow Services

• Performance and Scale

• Fully Customizable OOB Workflow

• Approval Designer

Page 29: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Development on Windows 7

• Either SharePoint Foundation or SharePoint Server

• Requires x64 OS

• Not Supported for Production

• Only for Stand Alone Installation

• Can be Disabled through Group Policy

• Just for Developers

• Requires Following Install Guide in SDK

Windows 7

Page 30: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Visual Studio 2010

Support for SharePoint Sandboxed Solutions

Import WSP from SharePoint Designer including Workflow

Build Workflow Steps for SharePoint Designer

Extensibility for Development of Additional SharePoint Artifacts

SharePoint Business Connectivity Services support

Web Part, BDC and Workflow designers

Package and Deploy SharePoint projects

Generate WSP for Production Deployment

View SharePoint site in Server Explorer

Team Foundation Server Integration

Broad SharePoint Support

Develop, Deploy and Debug

Web Part Designer

Project Types

Page 31: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Sandboxed Solutions

Essential Agility

Easy Deployment

Iterative Development

Access To Shared Servers

SharePoint Online

Essential Stability

Safe for Other Users

Limited API Access

Monitored Resources

Separate Process

Site Collection Limits

Page 32: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Sandboxed Solutions

• Bound to the Sitecollection

• Controlled by Site collection admins

• Are executed in an isolated environment(UserCode Service Application)

• User Coder Service Application can scale out tomultiple load balanced servers

• Monitored for resource abuse

• All SharePoint Designer Solutions are sandboxedby default

Page 33: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

SharePoint Online

Page 34: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung
Page 35: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Upgrade and PackagingWSP as the SharePoint Installer

• WSS Solution Package (WSP)

• Visual Upgrade from version to version

• SharePoint UI Save To Template

• Better-defined Upgrade Semantics– Declarative upgrade mappings

– Upgrade callouts for features

• Application discovery in SharePoint Sites

• WSPs as unified developer format– Works in both site collections and on machine

Page 36: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

Business Collaboration Applications

Portal for LOBApplication Data

Customized SharePoint Server 2010 Workloads

Visual Studio® 2010 SharePoint Tools

MSDN SharePoint SDK

Team Foundation Server

SharePoint Designer 2010

Microsoft Partner Program

MSDN® Forums

Patterns and Practices SharePoint GuidanceMicrosoft® Certification Exams

Composites

Widely Deployed Platform

Sandbox Solutions

Trained Administrators

Microsoft Official Curriculum

Search

Content

Communities

Sites

Insights

One WebPart Solutions

Run on Premises or Hosted

Run on SharePoint®Online

DEVELOPER TOOLS

COMMUNITY ECOSYSTEM

EXECUTION ENVIRONMENT

TARGET APPLICATION

TYPES

SHAREPOINT SERVER 2010 WORKLOADS

BUSINESS LOGICASP.NET Code Behind

WorkflowsEvent Receivers

ACCESS CONTROLSharePoint Sites

SharePoint Groups

InfoPath2010

Page 37: 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 ...download.microsoft.com/download/D/2/A/D2A49982... · 09.30-10.00 Uhr Einleitung 10.00-11.45 Uhr SharePoint 2010 Entwicklung

©2009 Microsoft, Microsoft Dynamics, the Office logo, and Your potential. Our passion. are trademarks of the Microsoft group of companies. The information herein is for informational purposes only and

represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on

the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR

STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.