1. アクセスフィールド値

ドロップリンク、ドロップツリー、グループドドロップリンクフィールドへのアクセス

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecore.Data.Fields.ReferenceFieldクラスを使うことで、DroplinkDroptreeGrouped Droplinkの各項目を単一項目選択できるフィールドタイプにアクセスできます。

Sitecore.Data.Fields.ReferenceField.TargetItemプロパティは、フィールドまたはNullで指定されたSitecore.Data.Items.Itemを含みます。例えば、Masterデータベースの*/Sitecore/Content/Home項目にあるDroptreeフィールドで指定されたReferenceField*項目にアクセスする場合:

Sitecore.Data.Database master = Sitecore.Configuration.Factory.GetDatabase("master");

Sitecore.Data.Items.Item home = master.GetItem("/sitecore/content/home");

Sitecore.Data.Fields.ReferenceField referenceField = item.Fields"referencefield";

if (referenceField==null) { // Field does not exist } else if (referenceField.TargetItem==null) { // No item selected } else { Sitecore.Data.Items.Item referencedItem = referenceField.TargetItem; // Process referenced item }

Sitecore.Data.Fields.ReferenceField.ValueプロパティをアイテムのIDに設定すれば、サポートされているタイプのフィールドを更新できます。例えば、Masterデータベースの*/Sitecore/Content/HomeアイテムのDroptreeフィールドにReferenceField*という名前の項目が/Sitecore/Content/Home/Sample項目を指定するように:

Sitecore.Data.Database master = Sitecore.Configuration.Factory.GetDatabase("master");

Sitecore.Data.Items.Item home = master.GetItem("/sitecore/content/home");

Sitecore.Data.Fields.ReferenceField referenceField = home.Fields"referencefield";

if (referenceField==null) { // Field does not exist } else { Sitecore.Data.Items.Item sample = master.GetItem("/sitecore/content/home/sample");

if (sample==null) { // Sample does not exist } else if (sample.ID.ToString()!=referenceField.Value) {

home.Editing.BeginEdit(); referenceField.Value = sample.ID.ToString(); home.Editing.EndEdit();

} }

この記事を改善するための提案がある場合は、 お知らせください!