1

1 つのビジュアル スタジオ ソリューションで 2 つの Web サイト用の Sitecore 8.1 MVC プロジェクトをセットアップすることを計画しているので、どのアプローチに従う必要がありますか。

アプローチ 1:

1 つのソリューションで 2 つの MVC プロジェクトを作成する必要がありますか

Sample.SC.Model ( C# クラス ライブラリ )

Sample.SC.Utility ( C# クラス ライブラリ )

Sample.SC.Web.Website1 (MVC プロジェクト) (このプロジェクトには、レイアウト、サブレイアウト、および Website1 に固有のすべてが含まれます)

Sample.SC.Web.Website2 (MVC プロジェクト) (このプロジェクトには、レイアウト、サブレイアウト、および Website2 に固有のすべてが含まれます)

アプローチ 2:

MVC プロジェクトを 1 つだけ作成し、Website1 レイアウトと Website1 サブレイアウトを Website1 フォルダーに配置し、Website2 レイアウトと Website2 サブレイアウトを Website2 フォルダーに配置する必要があります。

Sample.SC.Model ( C# クラス ライブラリ )

Sample.SC.Utility ( C# クラス ライブラリ )

Sample.SC.Web.Website (MVC プロジェクト)

****Sample.SC.Web.Website ノード下のフォルダー構造****

レイアウト

Website1 ( Website1 に固有のレイアウトが含まれます)

Website2 ( Website2 に固有のレイアウトが含まれます)

サブレイアウト

Website1 ( Website1 に固有のサブレイアウトが含まれます)

Website2 ( Website1 に固有のサブレイアウトが含まれます)

このプロジェクトでは、GlassMapper と TDS も使用する予定です。

ありがとう

4

5 に答える 5

3

この場合、Sitecore Areas を使用することをお勧めします。下の図のような構造になります。

ここに画像の説明を入力

Sitecore 8.1 エリアの詳細については、こちらを参照してください。

Views forlder の下に、Layout と Sublayout の 2 つのサブフォルダーがあります。Sublayout を使用していない MVC ソリューションの場合はビューを使用するため、フォルダに Sublayout という名前を付けないことをお勧めします。これは、Web サイト プロジェクト (Sample.SC.Web.Website) の構造です。ソリューションにはいくつのプロジェクトを作成できますが、たとえば、モデルのためだけにプロジェクトを作成することはお勧めしません。モデルは Areas フォルダーの下に追加できます。

于 2015-10-31T05:40:53.657 に答える
1

次の理由から、オプション 1 を使用します。

  • ソース ファイルが結合されているため、将来、あるサイトを別の Sitecore インストールに移行することはできません。ソリューション 2 を使用する場合、Web サイトとソリューションがどれだけ大きくなるかに応じて、多くの作業が必要になります。300%の確信がある場合にのみ、将来は起こらない
  • 両方のサイトの開発ライフサイクルは非常に緊密に結び付けられます: 1 つのサイトを迅速に反復する理由がある場合、それははるかに困難になります。

ファイルの重複を防ぐには、適切な命名規則とフォルダー構造を検討し、共有コンポーネントについて検討してください。

最終的に、特に継続的な展開が行われている場合は、展開の労力が大きくなりすぎないようにする必要があります。

于 2015-11-02T21:14:50.417 に答える
0

私は 2 番目のアプローチを採用します。次の理由により、最初のアプローチを実装するにはさらに努力が必要だと思います。

  1. 各サイトを単独で公開する必要があります。

  2. おそらく、サイトごとに DLL があり、これを処理する必要があります。

  3. 両方の Web サイトのファイルに注意する必要があるため、デプロイ後にそれらがマージまたは置換されることはありません。例:
    Website1 > Css > site.css Website2
    > Css > site.css

これらのファイルを展開すると、互いに上書きされます。

したがって、各 mvc プロジェクトで次のようなことを行う必要があると思います。

Website1 > WebsiteOneName > Css > site.css Website2
> WebsiteTwoName > Css > Site.css

  1. 各サイトには web.config ファイルがあり、これを処理する必要があります。(両方に 1 つの構成ファイル)
于 2015-11-01T12:19:52.487 に答える