🗨️
【C#】record 型のプロパティへのドキュメント コメントの書き方
record 型のプロパティへのドキュメント コメント
record 型はプロパティへとコンストラクタ引数が一体化しているのでコンストラクタで定義してあげればプロパティにデータが引き継がれます。
/// <summary>
/// 日時を保持する
/// </summary>
/// <param name="Date">日付</param>
/// <param name="Time">時刻</param>
public record MyDateTime(DateOnly Date, TimeOnly Time);
プロパティを上書きしたときの書き方
record 型のプロパティは上書き可能です。
そんなときは inheritdoc
で指定してあげましょう。
param
と summary
で形式が合わないので path
の指定が必要です。
どちらを inheritdoc
にしても書けます。
個人的には param
の方を元定義にして summary
を inheritdoc
にするのが好みです。
/// <summary>
/// 日時を保持する
/// </summary>
/// <param name="Date">日付</param>
/// <param name="Time"><inheritdoc cref="Time" path="/summary"/></param>
public record MyDateTime(DateOnly Date, TimeOnly Time)
{
/// <summary>
/// <inheritdoc cref="MyDateTime" path="/param[@name='Date']"/>
/// </summary>
public DateOnly Date { get; init; } = Date == default ? DateOnly.FromDateTime(DateTime.Now) : Date;
/// <summary>
/// 時刻
/// </summary>
public TimeOnly Time { get; init; } = Time == default ? TimeOnly.FromDateTime(DateTime.Now) : Time;
}
Discussion