開発のためにSitecoreとVisual Studioをセットアップしてください
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
より高度な開発タスクやVisual StudioプロジェクトにVisual Studioを使います。このトピックでは、これらのバージョンに基づいてSitecoreとVisual Studioを設定する方法を説明します。
- Visual Studio 2019
- ローカルのSitecore 9.0以降のインスタンス
このトピックは2つのセクションで構成されています。
- コンセプト - ここで説明するセットアップの背後にあるアイデアを説明します
- Visual Studioプロジェクトのセットアップ - 詳細な手順
概念
Visual StudioのプロジェクトはSitecore開発用にさまざまな方法で設定できます。このトピックでは、以下のセットアップについて説明します。
- MVCの利用
- Sitecoreインストールのルート外でVisual Studioプロジェクトを作成する
- NuGetパッケージマネージャーとSitecoreフィードの使用
ASP.NET MVCは、モデル–ビュー–コントローラー(MVC)パターンを実装したMicrosoftのウェブアプリケーションフレームワークです。このアーキテクチャパターンは、アプリケーションをモデル、ビュー、コントローラーの3つの主要なコンポーネントに分けます。ASPに不慣れな開発者は.NET MVC Microsoftのリソースを活用してこのウェブアプリケーションフレームワークの基本を学ぶべきです。
SitecoreではMVCをレンダリングエンジンとして使用できます。SitecoreはASP.NET WebFormsとMVCの両方をサポートしています。両方のレンダリングエンジンを利用できますが、単一のリクエストはWebFormsまたはMVCのいずれかでレンダリングする必要があります。Sitecoreは将来的にMVCの使用を約束しています。
Sitecoreのインストールのウェブルート内でVisual Studioプロジェクトを作成することも可能です。これにより、Visual Studioプロジェクトの変更がウェブサイト上で即座に利用可能になるという利点があります。
しかし、ウェブルート以外でプロジェクトを作成することにはいくつかの利点があり、推奨される実践です。
- これにより、ソリューションのファイルとSitecoreファイルの間に明確な分離が生まれます。
- Sitecoreをアップグレードしたり、新しいSitecoreインスタンスを作成して同じVisual Studioプロジェクトを簡単に使うことができます。
- バックアップ、復元、プロジェクトの移動は簡単です。
Webルート以外でプロジェクトを作成する場合、ビルド後にソリューションを積極的に公開してSitecoreインスタンスの変更を確認する必要があります。
NuGetはMicrosoft開発プラットフォーム向けのパッケージマネージャーであり、.NETも含まれます。 Sitecoreの公開NuGetパッケージFAQには、Sitecoreが提供するNuGetパッケージの詳細が記載されています。NuGetを使うことが、プロジェクトにSitecoreアセンブリとそれらのアセンブリへの参照を追加する推奨方法です。
検討すべきさらなる実践
この話題の範囲を超えて言及しておく価値がありますが、大規模な開発や大規模なチーム開発にはソース管理が必要であり、あなたの作業の一部がSitecoreアイテムを作成するため、課題があります。Sitecoreアイテムはファイルシステム自体には存在せず、したがってソース管理ソフトウェアには利用できません。
Sitecoreのアイテムをシリアライズとデシリアライズして、これらのアイテムをソース管理システム内で移動させる必要があります。そのためのツールはいくつかあります。その中でも特に人気のあるものは以下の通りです:
この2つのソリューションの範囲はかなり異なり、自分のニーズに最も合うものを調査する必要があります。
Sitecoreでの開発には、Sitecore RocksのVisual Studioプラグインの使用を検討してください。Sitecore Rocksは豊富な機能で開発者の生産性を向上させます。
そして最後に、大規模にSitecore開発を行うためのベストプラクティスが新たに登場しています。この手法はHelixと呼ばれ、HabitatはHelixを用いて作られた大規模なウェブサイトの一例です。
Visual Studioプロジェクトを立ち上げる
Visual Studio 2017年のプロジェクトをSitecore MVC設立するには:
-
管理者としてVisual Studio 2017を開き、ファイル、新設、プロジェクト ...をクリック。新しい プロジェクト ダイアログでテンプレート、Visual C#、Web...を閲覧してください。 ASP.NET Webアプリケーションを選択してください:

-
OKをクリックします。新しい ASP.Net プロジェクトダイアログで、MVCのフォルダと参照を含む空のプロジェクトを作成します:

-
Visual Studio作成したプロジェクトフォルダで、SitecoreインストールのWebsiteフォルダからglobal.asaxファイルをコピーし、プロジェクト作成時に追加したglobal.asaxファイルを上書きVisual Studioします。ファイルには以下だけの内容が入っているはずです:
%@Application Language='C#' Inherits="Sitecore.Web.Application" %
-
Visual StudioプロジェクトのWeb.configファイルは非常に簡素ですが、SitecoreインスタンスのWeb.configファイルには重要な設定が含まれています。このステップは、公開時にVisual StudioのファイルがSitecoreのファイルを上書きしないようにするためのものです。
Visual StudioのSolution Explorerで、プロジェクトのルートにあるWeb.configファイルを右クリックし、「 プロパティ」を選択してください。ビルドアクションプロパティをNone 、コピー・トゥ・アウトプット・ディレクトリプロパティをDo not copyに設定します。

-
Visual StudioのNuGetパッケージマネージャー で、以下のSitecoreパッケージをプロジェクトに追加してください:
Sitecore.Kernel
Sitecore.Mvc
Sitecore.Mvc.Analytics
!注もしすでにMicrosoft.AspNet.Mvcパッケージへの参照がある場合は、それを削除するか、開発するSitecoreインスタンスのMicrosoft.AspNet.Mvcパッケージのバージョンに同期させるようにしてください。
-
Visual StudioのSolution Explorerで、各DLLのCopy Localプロパティを設定し、Falseに追加されたNuGetパッケージマネージャーを参照します。
-
Visual StudioプロジェクトのViews/web.configファイル内に、以下のSitecore名前空間を名前空間のリストに追加してください:
-
公開展開を設定するには、Visual Studioのツールバーの 「Create Publish Settings 」ドロップダウンで を選択してください。
-
Publish WebダイアログのPublishメソッド欄で「File System」をクリックし、ターゲットロケーション欄でSitecoreインスタンスのWebsiteフォルダに移動し、「Publish」をクリックします。
NuGetフィードの詳細については、Sitecoreの公開NuGetフィードFAQをご覧ください。
NuGetパッケージの詳細については、SitecoreアセンブリリストのNuGetパッケージをご覧ください。