/// <summary> /// 日記データを書き込む。 /// データが存在する場合、上書きする。 /// </summary> /// <param name="diary"></param> /// <exception>書き込めない場合、例外発生</exception> public void WriteDiaryData(DiaryData diary) { try { var reader = new DiaryCsvReader(_fileName); var diaries = reader.ReadAllDiaryData() ?? new List <DiaryData>(); var target = diaries?.SingleOrDefault(d => d.Date == diary.Date); if (target != null) { // 上書き target.Text = diary.Text; } else { // 追加 diaries.Add(diary); } WriteAllDiaryData(diaries); } catch (Exception ex) { _logger.Error(ex.ToString()); throw; } }
/// <summary> /// 日記データを削除する。 /// </summary> /// <param name="diary"></param> /// <exception>指定したデータがない場合、例外発生</exception> public void DeleteDiaryData(DiaryData diary) { try { var reader = new DiaryCsvReader(_fileName); var diaries = reader.ReadAllDiaryData(); var target = diaries.Single(d => d.Date == diary.Date); // 削除 diaries.Remove(target); WriteAllDiaryData(diaries); } catch (Exception ex) { _logger.Error(ex.ToString()); throw; } }