チュートリアル: プロジェクト タスク リスト定義を配置する
このチュートリアルでは、Visual Studio 2012 を使用して、プロジェクト タスクを追跡する SharePoint リストを作成、カスタマイズ、デバッグ、配置する方法を説明します。
Note
次の手順で参照している Visual Studio ユーザー インターフェイス要素の一部は、お使いのコンピューターでは名前や場所が異なる場合があります。 これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。 詳細については、「Visual Studio IDE のカスタマイズ」を参照してください。
前提条件
サポート対象エディションの Microsoft Windows および SharePoint。
Visual Studio 2017 または Azure DevOps Services。
SharePoint リストを作成する
SharePoint リスト プロジェクトを作成し、リスト定義をタスクに関連付けます。
[新しいプロジェクト] ダイアログ ボックスを開き、[SharePoint] ノードを展開して、[2010] ノードをクリックします。
[テンプレート] ペインで、[SharePoint 2010 プロジェクト] テンプレートを選択し、プロジェクトに ProjectTaskList という名前を付け、[OK] をクリックします。
SharePoint カスタマイズ ウィザードが表示されます。
デバッグに使用するローカル SharePoint サイトを指定し、[ファーム ソリューションとして配置する] オプション ボタンをクリックして、[完了] をクリックします。
プロジェクトのショートカット メニューを開き、[追加] > [新しい項目] の順に選択します。
[テンプレート] ペインで、[リスト] テンプレートを選択し、[追加] をクリックします。
SharePoint カスタマイズ ウィザードが表示されます。
[リストの表示名] ボックスに、「Project Task List」(プロジェクト タスク一覧) と入力します。
[既存のリストの種類に基づくカスタマイズできないリストを作成] オプション ボタンをクリックし、一覧で [タスク] を選択し、[完了] をクリックします。
一覧、フィーチャー、パッケージが、ソリューション エクスプローラーに表示されます。
イベント レシーバーを追加する
タスク一覧で、タスクの期限と説明を自動的に設定するイベント レシーバーを追加できます。 次の手順では、イベント レシーバーとしてリスト インスタンスに単純なイベント ハンドラーを追加します。
プロジェクト ノードのショートカット メニューを開き、[追加] を選択し、[新しい項目] をクリックします。
SharePoint テンプレートの一覧で、[イベント レシーバー] テンプレートを選択し、ProjectTaskListEventReceiver という名前を付けます。
SharePoint カスタマイズ ウィザードが表示されます。
[イベント レシーバー設定の選択] ページの [使用するイベント レシーバーの種類] ボックスの一覧で、イベント レシーバーの種類として [リスト項目イベント] を選択します。
[イベント ソースとなる項目] ボックスの一覧で、[タスク] を選択します。
処理するイベントの一覧で、[項目が追加されました] の横にあるチェック ボックスをオンにして、[完了] をクリックします。
新しいイベント レシーバー ノードが、ProjectTaskListEventReceiver という名前のコード ファイルと共にプロジェクトに追加されます。
ProjectTaskListEventReceiver コード ファイル内の
ItemAdded
メソッドにコードを追加します。 新しいタスクが追加されるたびに、既定の期限と説明がタスクに追加されます。 既定の期限は 2009 年 7 月 1 日です。
プロジェクト タスク リスト フィーチャーをカスタマイズする
SharePoint ソリューションを作成すると、Visual Studio によって、既定のプロジェクト項目のフィーチャーが自動的に作成されます。 フィーチャー デザイナーを使用して、SharePoint サイトのプロジェクト タスク リスト設定をカスタマイズできます。
ソリューション エクスプローラーで、[フィーチャー]を展開します。
Feature1 のショートカット メニューを開き、[ビュー デザイナー] を選択します。
[タイトル] ボックスに「Project Task List Feature」(プロジェクト タスク一覧フィーチャー) と入力します。
[スコープ] ボックスの一覧で、[Web] を選択します。
[プロパティ] ウィンドウで、Version プロパティの値として「1.0.0.0」を入力します。
プロジェクト タスク リスト パッケージをカスタマイズする
SharePoint プロジェクトを作成すると、Visual Studio により、既定のプロジェクト項目を含むフィーチャーがパッケージに自動的に追加されます。 パッケージ デザイナーを使用して、SharePoint サイトのプロジェクト タスク リスト設定をカスタマイズできます。
ソリューション エクスプローラーで、[パッケージ] のショートカット メニューを開き、[ビュー デザイナー] を選択します。
[名前] ボックスに、「ProjectTaskListPackage」と入力します。
[Web サーバーのリセット] チェック ボックスをオンにします。
プロジェクト タスク リストをビルドしテストする
プロジェクトを実行すると、SharePoint サイトが開きます。 ただし、タスクの一覧の場所には手動で移動する必要があります。
F5 キーを押して、プロジェクト タスクの一覧をビルドおよび配置します。
SharePoint サイトが開きます。
[ホーム] タブを選択します。
左側のサイドバーで、[プロジェクト タスク一覧] リンクを選択します。
[プロジェクト タスク一覧] ページが表示されます。
[リスト ツール] タブで、[項目] タブを選択します。
[項目] グループで、[新しい項目] をクリックします。
[タイトル] テキスト ボックスに「Task1」と入力します。
[保存] をクリックします。
サイトが更新されると、Task1 タスクが 2009 年 7 月 1 日の期限で表示されます。
[Task1] を選択します。
タスクの詳細ビューが表示され、"This is a critical task"(これはクリティカル タスクです) という説明が表示されます。
プロジェクト タスク リストを配置する
プロジェクト タスク リストをビルドおよびテストした後、"ローカル システム" または "リモート システム" にそれを配置できます。 ローカル システムは、ソリューションを開発したコンピューターと同じですが、リモート システムは別のコンピューターです。
ローカル システムにプロジェクト タスク リストを配置するには
Visual Studio メニュー バーで、[ビルド] > [ソリューションの配置] の順に選択します。
Visual Studio では IIS アプリケーション プールをリサイクルし、ソリューションの既存のバージョンを取り消し、ソリューション パッケージ (.wsp) ファイルを SharePoint にコピーして、そのフィーチャーをアクティブ化します。 これで、SharePoint でソリューションを使用できるようになります。 配置構成手順に関する詳細については、「方法: SharePoint の配置構成を編集する」を参照してください。
リモート システムにプロジェクト タスク リストを配置するには
Visual Studio のメニュー バーで、 [ビルド] > [発行] の順に選択します。
[発行] ダイアログ ボックスで、[ファイル システムに発行する] オプション ボタンをクリックします。
[発行] ダイアログ ボックスで目的の場所を変更するには、省略記号ボタン () をク選択し、別の場所に移動します。
[発行] ボタンをクリックします。
ソリューションの .wsp ファイルが作成されます。
.wsp ファイルをリモートの SharePoint システムにコピーします。
PowerShell
Add-SPUserSolution
コマンドを使用して、リモートの SharePoint インストールにパッケージをインストールします。 (ファーム ソリューションの場合は、Add-SPSolution
コマンドを使用します)。たとえば、「
Add-SPUserSolution C:\MyProjects\ProjectTaskList\ProjectTaskList\bin\Debug\ProjectTaskList.wsp
」のように入力します。PowerShell
Install-SPUserSolution
コマンドを使用して、ソリューションを配置します。 (ファーム ソリューションの場合は、Install-SPSolution
コマンドを使用します)。たとえば、「
Install-SPUserSolution -Identity ProjectTaskList.wsp -Site http://NewSiteName
」のように入力します。リモート配置の詳細については、「ソリューションの使用」と SharePoint 2010 の PowerShell を使用したソリューションの追加と配置に関するページを参照してください。