私は、次のコードを使用してコンポーネントテンプレートメタデータのためにこれを取得することができた:
@foreach (var cp in ComponentPresentations) {
@if (cp.Template.Metadata != null && cp.Template.Metadata["position"] != null){
@Debug(string.Format("The Component Template position is {0}", cp.Template.Metadata["position"].InnerText))
@if (cp.Template.Metadata["position"].InnerText.ToLower().Equals("main")){
@cp.RenderComponentPresentation()
}
}
}
したがって、私は次のようなものを使用することができるはずだと思う:
@if (Page.Template.Metadata != null && Page.Template.Metadata["content_grid"] != null){
@Debug(string.Format("The content_grid value is {0}", Page.Template.Metadata["content_grid"].InnerText))
<div class="@Page.Template.Metadata["content_grid"].InnerText">
</div>
}
content_gridがxmlとして返されるため、.InnerTextではなく、.Valueであることに注意してください。私のコードでは、「位置」は単なる文字列でした。あなたがタクソノミーを使っているなら、これは違うかもしれないと思います。
おかげで、 ジョナサン
P.S.私は剃刀メディエーターのバージョン1.2を使用しています
私はアレックスがインターネットのこの側面に来るのを見たことがない、私はおそらく彼のブログにそれについて投稿するだろう:http://www.codedweapon.com/ –
ありがとうこのリンクはv1.3の追加機能として計画しているようです – richeym