0

Sitecore 7.2 を実行しており、進行中の大規模プロジェクトで Glass.Mapper.Sc.CastleWindsor の使用を検討しています。問題が発生しています。

以下のソリューションがあります: 1. 再利用可能なコア コードのベース プロジェクト 2. 再利用可能な Web コード、コントロールなどのベース Web プロジェクト (# 1 を参照) 3. ドメイン モデルおよびその他の非 Web 用のプロジェクト固有のプロジェクトコード (# 1 を参照) 4. プロジェクト固有の Web プロジェクト (# 1、2、3 を参照)

プロジェクト # 2 と # 4 は同じ Web ルートを指しています。Sitecore のマルチサイト インスタンスを実行していますが、このプロジェクトはバージョン 7.x で初めてです。残りはやがて移行されます。

GlassMapperScCustom GlassLoaders() メソッドには、次のものがあります。

return new IConfigurationLoader[] { new SitecoreAttributeConfigurationLoader("{assembly name of project # 3}") };

最初の概念実証として、プロジェクト 3 で 1 つのドメイン モデル クラスを見つけ、プロジェクト 4 で Glass マッピングを機能させようとしました。サイコロはありません。以下はすべてアイテムを返しますが、フィールドが入力されていません。

new SitecoreContext().GetCurrentItem<{class name}>()
new SitecoreContext().GetItem<{class name}>("path")
new SitecoreContext().GetItem<{class name}>(new Guid("Sitecore GUID"))

4 つのプロジェクトすべてに nuget パッケージ Glass.Mappers.Sc.CastleWindsor をインストールしようとしましたが、役に立ちませんでした。また、VersionDisabler を使用したり、サイトの言語を確認したりしましたが、成功しませんでした。

Glass.Mapper.Sc のチュートリアルとサンプル コードの一部に一貫性がなく、これが問題の一部であると思われます。チュートリアルの中には古い方法を示しているものもあれば、新しい方法を示しているものもありますが、クラスをロードするためにチュートリアルに示されているすべての方法を試しました。

このページ... http://www.glass.lu/download/glass-sitecore-mapper/ ... Glass はバージョン 7.0 までの Sitecore のみをサポートしているようです。それは正確ですか、それとも情報が古くなっているだけですか? リンクは、Marketplace ページから古い Sitecore Mapper Web サイトに移動しているようです。

これを早急に機能させる必要があります。そうしないと、この大規模なプロジェクトで Glass の使用を放棄する必要があります。これは、カスタム アイテム ジェネレーターまたはネイキッド アイテム アクセスのさらなる使用を意味するため、やりたくありません。ご協力いただきありがとうございます。

4

2 に答える 2

1

使用している Glass のバージョンを教えてください。最近のバージョンでSitecoreAttributeConfigurationLoaderは、非推奨です。基本的な使用では、構成ローダーを指定する必要はまったくありません。すぐに使える GlassMapperScCustom を使用してみてください。それでもうまくいかない場合は、Glass.Mapper.Configuration.Attributes.AttributeConfigurationLoader代わりに試してください。

于 2014-07-12T00:08:39.453 に答える