public ActionResult ChangeTypeData(ChangeTypeData model) { var loginuser = RDB.db.Users.Where(p => p.idName.Equals(User.Identity.Name)).Single(); var module = loginuser.Modules.Where(p => p.Name.Equals(model.ModuleName)).Single(); //入力されたデータ種類とデータ型に変更(データ型は「変更しない」が選択されていると""(空文字)になる) int num = 0; foreach (var unit in module.Units) { unit.Unit1 = model.UnitList[num]; if (!model.TypeDataList[num].Equals("")) { string typedata = model.TypeDataList[num]; unit.TypeDataId = RDB.db.TypeDatas.Where(p => p.DataType.Equals(typedata)).Single().id; } RDB.db.SaveChanges(); num++; } return RedirectToAction("Detail", "Home", new { id = module.Name }); }
// データの種類の変更 public ActionResult ChangeTypeData(Module model) { ChangeTypeData CTDmodel = new ChangeTypeData(); CTDmodel.ModuleName = model.Name; CTDmodel.UnitList = new List<string>(); CTDmodel.TypeDataList = new List<string>(); CTDmodel.TypeDataAllList = new List<string>(); //今設定されているデータ種類(名前とデータ型)の取得 foreach (var unit in RDB.db.Modules.Where(p => p.id == model.id).Single().Units) { CTDmodel.UnitList.Add(unit.Unit1); CTDmodel.TypeDataList.Add(RDB.db.TypeDatas.Where(p => p.id == unit.TypeDataId).Single().DataType); } //設定可能なデータ型を全て取得 foreach (var typedata in RDB.db.TypeDatas) { CTDmodel.TypeDataAllList.Add(typedata.DataType); } return View(CTDmodel); }