/// <summary> /// お知らせの新しいインスタンスを生成します。 /// </summary> /// <param name="announceTitle">お知らせタイトル。</param> /// <param name="body">お知らせ本文。</param> /// <param name="announcementGenre">お知らせ種別。</param> /// <param name="registeredDate">登録日。</param> /// <param name="endDate">終了日。</param> /// <param name="attachedFilePath">添付ファイルパス。</param> public Announcement(AnnouncementTitle announceTitle, string body, AnnouncementGenre announcementGenre, RegisteredDate registeredDate, EndDate endDate, AttachedFilePath attachedFilePath) { this.AnnounceTitle = announceTitle ?? throw new ArgumentNullException("お知らせタイトル"); this.Body = body; this.AnnouncementGenre = announcementGenre = announcementGenre ?? throw new ArgumentNullException("お知らせ種別");; this.RegisteredDate = registeredDate ?? throw new ArgumentNullException("登録日"); if (endDate != null) { this.EnsureValidEndDates(this.RegisteredDate, endDate); } this.EndDate = endDate; this.AttachedFilePath = attachedFilePath; }
/// <summary> /// 添付ファイルパスを変更します。 /// </summary> /// <param name="attachedFilePath">添付ファイルパス。</param> public void ChangeAttachedFilePath(AttachedFilePath attachedFilePath) { this.AttachedFilePath = attachedFilePath; }
/// <summary> /// 添付ファイルパスを削除します。 /// </summary> public void DeleteAttachedFilePath() { this.AttachedFilePath = null; }