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

アクセスDateおよびDatetimeフィールド

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

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

Sitecore.Data.Fields.DateFieldクラスを使って、型DateDatetimeのテンプレートフィールドにアクセスできます。Sitecore.Data.Fields.DateField.Valueプロパティは、Sitecore(yyyyMMddTHHmmss)で使われるISO形式の文字列として日付と時刻を含みます。

!注.NET日付形式パターンの詳細については、http://msdn.microsoft.com/en-us/library/73ctwf33.aspxを参照してください。

ISO形式の値をSitecore.DateUtil.IsoDateToDateTimeメソッドを使ってSystem.DateTime構造に変換できます。例えば、Masterデータベースの*/Sitecore/Content/Home項目にあるDateTimeFieldというDateまたはDatetime*フィールドにアクセスするには、

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

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

Sitecore.Data.Fields.DateField dateTimeField = home.Fields"datetimefield";

string dateTimeString = dateTimeField.Value;

DateTime dateTimeStruct = Sitecore.DateUtil.IsoDateToDateTime(dateTimeString);

あるいは、同じ値を表すSystem.DateTime構造を含むSitecore.Data.Fields.DateField.DateTimeプロパティにアクセスすることもできます。例えば、マスターデータベースの*/Sitecore/Content/Home項目にあるDateまたはDatetime*フィールドのDateTimeFieldをSystem.DateTime構造としてアクセスするには:

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

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

Sitecore.Data.Fields.DateField dateTimeField = home.Fields"datefield";

DateTime dateTimeStruct = dateTimeField.DateTime;

DateまたはDatetimeフィールドの値を更新するには、Sitecore.Data.Fields.DateField.ValueプロパティをISO形式の文字列に更新できます。Sitecore.DateUtil.ToIsoDateメソッドを使ってSystem.DateTime構造をISO形式に変換できます。例えば、マスターデータベースの*/Sitecore/Content/Home*項目にあるDatetimeフィールドの値DateTimeFieldの値を現在のシステム日付に更新するには:

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

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

Sitecore.Data.Fields.DateField dateTimeField = home.Fields"datetimefield";

if (dateTimeField != null) { home.Editing.BeginEdit(); dateTimeField.Value = Sitecore.DateUtil.ToIsoDate(DateTime.Now); home.Editing.EndEdit(); }

!注もしユーザーが型DateまたはDatetimeのフィールドの値を指定していなければ、Sitecore.Data.Fields.DateField.Valueプロパティは空文字列を含み、Sitecore.Data.Fields.DateField.DateTimeプロパティはSystem.DateTime.MinValueを含む。

!ヒントデフォルトでは、型Dateのフィールドには時間値がミッドナイト(深夜)が含まれます。

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