visual studioで作成するsharepointアドイン開発シナリオ
TRANSCRIPT
Visual Studioによるアドイン開発
SharePointをカスタマイズするツールの中で
Visual Studioはもっとも柔軟に開発できるツール
カスタムリスト
Webパーツ
CEWP
SharePointDesigner
NapaVisualStudio
Visual Studioの開発シナリオ
• SharePointホスト型アドイン
• プロバイダーホスト型アドイン• ASP.NET Webアプリケーション
• クラウドビジネスアドイン(LightSwitch)
SharePointホスト型 プロバイダーホスト型
開発環境 JavaScript ASP.NET LightSwitch(クラウドビジネス)
開発対象 SharePointコンポーネント
の拡張(リスト、ページ、Webパーツ、ワークフロー、ライブラリ)
SharePoint連携するリモートWebアプリケーションの開発SharePointコンポーネントの開発も可能
サーバ側コード
なし あり
SharePointホスト型アドイン
• カスタム列
• カスタムリスト
• カスタムWebパーツ
• カスタムコンテンツタイプ
開発可能なカスタム部品
• クライアント側レンダリング
• クライアント側データ操作
開発可能なカスタム処理
• カスタムワークフロー• カスタムページ• カスタムリボンボタン
SharePointホスト型アドイン
Visual Studioでカスタムコンポーネントの定義ファイルを作成して配置。サーバ側のロジックは利用できないため、表示処理をJavaScriptで制御
カスタムリストカスタムコンテンツタイプカスタム列
カスタムワークフロー
クライアント側レンダリング
カスタムリボンボタン
プロバイダーホスト型アドイン
• 一般的なWebアプリケーション
• ASP.NET /SQL Server(クラウド対応)
ASP.NET Webアプリケーション
• 簡易的なWebアプリケーション
• EUC/EUD開発(プログラミング不要)
クラウドビジネスアドイン
プロバイダーホスト型アドイン
Webアプリケーションと同じ開発方式。認証がSharePointで行われ、ワークフローやドキュメント管理と連携可能なWebアプリケーションを作成可能
ASP.NET Webアプリケーション クラウドビジネスアドイン
SharePointアドインの使い分けサーバーサイドロジック
クライアントサイドロジック
SQL Serverなどのデータベースが必要
SharePointのリストで対応可能
プロバイダーホスト型
SharePointホスト型
業務アプリのようなサーバサイド処理が必要なケースはプロバイダーホスト型を利用
クラウドビジネスアドイン
EUC向き
SharePoint Online
SharePointアドインのアップグレード
プロバイダーホスト型アドインはアップグレード時の影響も小さく、SharePointのカスタマイズ方式としては保守性が良い
⇒より積極的にカスタマイズを推進できる
カスタマイズに対して「アップグレードによって既存機能が動作しなくなる」点を心配することが多いが、以前のSharePointにインストールする方式にくらべ外部Webアプリとの連携によって機能拡張するSharePointアドインはより疎結合で影響を受けにくい構造になっている
Client Webパーツ
追加機能外部Webアプリ
iframe
まとめ
• SharePoint をカスタマイズするツールの中でVisual Studioはもっとも柔軟に開発できるツール
• Visual Studioを利用したSharePointアドインの開発シナリオには「SharePointホスト型」、「プロバイダーホスト型」の2種類がある
• 「プロバイダーホスト型」のシナリオにはさらに、EUC/EUD向けのプログラミング不要の「クラウドビジネスアドイン」の方式がある
• プロバイダーホスト型アドインは保守性がよく、より積極的にカスタマイズを推進できる手法
http://www.proaxia-consulting.co.jp
Azure&SharePointアプリケーション開発についてのお問合せ[担当] [email protected]
SharePoint Onlineとファイルサーバーを統合するCloud Storage Lighthttps://www.cloudstoragelight.com
SharePoint 上のファイルをエクスプローラ感覚でサクサク操作するSharePointエクスプローラhttps://www.cloudstoragelight.com/sharepointexplorer/