/// <summary> /// 固定時間リストをインポートして DB に登録します。 /// </summary> /// <param name="fileName"></param> private void ImportFixedTimeListCore(string fileName) { // カーソルを待機状態にする Cursor.Current = Cursors.WaitCursor; try { List <FixedTimeModel> importList = new List <FixedTimeModel>(); // csvファイルをインポート(固定時間,名称,固定番号のデータを前提とする) using (var paser = new Microsoft.VisualBasic.FileIO.TextFieldParser(fileName, Encoding.GetEncoding("Shift_JIS"))) { paser.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited; paser.SetDelimiters(","); while (!paser.EndOfData) { try { var fields = paser.ReadFields(); if (fields.Length != 3) { continue; } var item = new FixedTimeModel() { FixedTimeValue = int.Parse(fields[0]), // 固定時間 Name = fields[1], // 名称 FixedNumber = int.Parse(fields[2]) // 固定番号 }; importList.Add(item); } catch (Exception ex) { var method = MethodBase.GetCurrentMethod(); base.WriteLog(method, ex.Message); } } } // DBへ登録 DataServiceFacade.Instance.AddFixedTimeData(importList); MessageBox.Show(String.Format("{0}件インポートしました", importList.Count()), "DB操作", MessageBoxButtons.OK, MessageBoxIcon.Information); // 表示の更新 this.GetFixedTimeAll(); } catch (Exception ex) { var method = MethodBase.GetCurrentMethod(); Console.WriteLine("{0},{1}(),{2}", method.DeclaringType.FullName, method.Name, ex.Message); MessageBox.Show(ex.Message, "DBエラー", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { // カーソルを元に戻す Cursor.Current = Cursors.Default; } }
/// <summary> /// 固定時間のデータオブジェクトを固定時間エンティティのオブジェクトに変換する機能を提供します。 /// </summary> /// <param name="data"></param> /// <returns></returns> public static FixedTimeEntitie ToFixedTimeEntitie(this FixedTimeModel data) { if (data == null) { throw new ArgumentNullException(nameof(MapperConverters) + "." + nameof(data)); } return(new FixedTimeEntitie() { Id = data.Id, FixedTimeValue = data.FixedTimeValue, Name = data.Name, FixedNumber = data.FixedNumber }); }
/// <summary> /// 固定時間 テーブルを更新します。 /// </summary> /// <param name="data"></param> public void UpdateFixedTimeData(FixedTimeModel data) { this.ThrowIfUnInitialized(); try { int ret = 0; Lock(() => _ContextFixedTime.Update(data.ToFixedTimeEntitie())); var msg = String.Format("{0}を{1}件更新しました。", nameof(FixedTimeModel), ret); this.WriteLog(MethodBase.GetCurrentMethod(), msg); } catch (Exception ex) { this.WriteLog(MethodBase.GetCurrentMethod(), ex.Message); throw; } }