---
title: "開発のためにSitecoreとVisual Studioをセットアップしてください"
slug: "set-up-sitecore-and-visual-studio-for-development"
abstract: ""
---
# 開発のためにSitecoreとVisual Studioをセットアップしてください

より高度な開発タスクやVisual StudioプロジェクトにVisual Studioを使います。このトピックでは、これらのバージョンに基づいてSitecoreとVisual Studioを設定する方法を説明します。

-   Visual Studio 2019
-   ローカルのSitecore 9.0以降のインスタンス

このトピックは2つのセクションで構成されています。

-   [コンセプト](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-manager/set-up-sitecore-and-visual-studio-for-development.html#UUID-dde12ac4-3063-9412-3b8c-d5088c408381_id__Concepts "Concepts") - ここで説明するセットアップの背後にあるアイデアを説明します
-   [Visual Studioプロジェクトのセットアップ](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-manager/set-up-sitecore-and-visual-studio-for-development.html#UUID-dde12ac4-3063-9412-3b8c-d5088c408381_id__Set_up_a "Set up a Visual Studio project") - 詳細な手順

## 概念

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](https://www.nuget.org/)はMicrosoft開発プラットフォーム向けのパッケージマネージャーであり、.NETも含まれます。 [Sitecoreの公開NuGetパッケージ](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-manager/sitecore-public-nuget-feed-faq.html "Sitecore public NuGet feed FAQ")FAQには、Sitecoreが提供するNuGetパッケージの詳細が記載されています。NuGetを使うことが、プロジェクトにSitecoreアセンブリとそれらのアセンブリへの参照を追加する推奨方法です。

### 検討すべきさらなる実践

この話題の範囲を超えて言及しておく価値がありますが、大規模な開発や大規模なチーム開発にはソース管理が必要であり、あなたの作業の一部がSitecoreアイテムを作成するため、課題があります。Sitecoreアイテムはファイルシステム自体には存在せず、したがってソース管理ソフトウェアには利用できません。

Sitecoreのアイテムをシリアライズとデシリアライズして、これらのアイテムをソース管理システム内で移動させる必要があります。そのためのツールはいくつかあります。その中でも特に人気のあるものは以下の通りです:

-   Sitecore(通称TDS)[のチーム開発](http://www.teamdevelopmentforsitecore.com/)
-   [ユニコーン](https://github.com/kamsar/Unicorn)

この2つのソリューションの範囲はかなり異なり、自分のニーズに最も合うものを調査する必要があります。

Sitecoreでの開発には、Sitecore RocksのVisual Studioプラグインの使用を検討してください。Sitecore Rocksは豊富な機能で開発者の生産性を向上させます。

そして最後に、大規模にSitecore開発を行うためのベストプラクティスが新たに登場しています。この手法は[Helix](http://helix.sitecore.net/)と呼ばれ、[Habitat](https://github.com/Sitecore/Habitat/wiki)はHelixを用いて作られた大規模なウェブサイトの一例です。

## Visual Studioプロジェクトを立ち上げる

Visual Studio 2017年のプロジェクトをSitecore MVC設立するには:

1.  管理者としてVisual Studio 2017を開き、**ファイル**、**新設**、**プロジェクト** ...をクリック。新しい **プロジェクト** ダイアログでテンプレート、Visual C#、Web...を閲覧してください。 **ASP.NET Webアプリケーション**を選択してください:
    
    ![Create a new application](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/93/sitecore-experience-manager/images/3436A0A4044C4E5689565F64C3EE56E4.png)
    
    > !注.NETフレームワーク[](https://kb.sitecore.net/articles/087164)の互換性表で、あなたのSitecoreバージョンで使う正確なバージョンを確認してください。
    
2.  **OK**をクリックします。**新しい ASP.Net プロジェクト**ダイアログで、MVCのフォルダと参照を含む空のプロジェクトを作成します:
    
    ![Select a project template](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/93/sitecore-experience-manager/images/2BAD7328C4D34ADE9F821723BF4C0369.png)
    
3.  Visual Studio作成したプロジェクトフォルダで、SitecoreインストールのWebsiteフォルダからglobal.asaxファイルをコピーし、プロジェクト作成時に追加したglobal.asaxファイルを上書きVisual Studioします。ファイルには以下だけの内容が入っているはずです:
    
    %@Application Language='C#' Inherits="Sitecore.Web.Application" %
    
4.  Visual StudioプロジェクトのWeb.configファイルは非常に簡素ですが、SitecoreインスタンスのWeb.configファイルには重要な設定が含まれています。このステップは、公開時にVisual StudioのファイルがSitecoreのファイルを上書きしないようにするためのものです。
    
    Visual Studioの**Solution Explorer**で、プロジェクトのルートにあるWeb.configファイルを右クリックし、「 **プロパティ**」を選択してください。ビルドアクションプロパティをNone 、コピー・トゥ・アウトプット・ディレクトリプロパティをDo not copyに設定します。
    
    ![Web.config properties](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/93/sitecore-experience-manager/images/2EE28EED88E74BDA9268F1C90E01DFE4.png)
    
5.  Visual Studioの**NuGetパッケージマネージャー** で、以下のSitecoreパッケージをプロジェクトに追加してください:
    
    Sitecore.Kernel
    
    Sitecore.Mvc
    
    Sitecore.Mvc.Analytics
    
    > !注もしすでにMicrosoft.AspNet.Mvcパッケージへの参照がある場合は、それを削除するか、開発するSitecoreインスタンスのMicrosoft.AspNet.Mvcパッケージのバージョンに同期させるようにしてください。
    
6.  Visual Studioの**Solution Explorer**で、各DLLのCopy Localプロパティを設定し、Falseに追加された**NuGetパッケージマネージャー**を参照します。
    
7.  Visual StudioプロジェクトのViews/web.configファイル内に、以下のSitecore名前空間を名前空間のリストに追加してください:
    
    <add namespace="Sitecore.Mvc" />
    
    <add namespace="Sitecore.Mvc.Presentation" />
    
8.  公開展開を設定するには、Visual Studioのツールバーの **「Create Publish Settings** 」ドロップダウンで **を選択してください。**
    
9.  **Publish Web**ダイアログの**Publish**メソッド欄で「**File System**」をクリックし、**ターゲットロケーション**欄でSitecoreインスタンスのWebsiteフォルダに移動し、「**Publish**」をクリックします。
    

NuGetフィードの詳細については、[Sitecoreの公開NuGetフィードFAQ](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-manager/sitecore-public-nuget-feed-faq.html "Sitecore public NuGet feed FAQ")をご覧ください。

NuGetパッケージの詳細については、[SitecoreアセンブリリストのNuGetパッケージ](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-manager/sitecore-assembly-list-nuget-packages.html "Sitecore Assembly List NuGet Packages")をご覧ください。