EF一对一关系数据添加
昨天突然想把用户表和登录表分开来放,然后使用一对一关系来设计数据库;
添加数据的时候感觉很好用;可以用任意一个Service来保存;
不罗嗦,直接上代码啦,下面是两种方式来存储数据;
请大家留下自己的见解。谢谢。
#region Employee //创建一个中间层Employee对象 IEmployeeService employeeService = new EmployeeService(); //创建实体对象UserInfo UserInfo u = new UserInfo(); u.Phone = "123123113"; u.UserName = "管理员"; u.Sex = 0; u.Address = "shjkfhkl"; u.Sort = "0"; u.Remark = "asjdlf"; u.ModifiedOn = DateTime.Now; u.SubTime = DateTime.Now; //创建实体对象Employee Employee e = new Employee(); e.LoginName = "Administrator"; e.LoginPwd = "123"; e.DelFlag = 0; //这里是关联Emploee表和UserInfo表数据 e.UserInfo = u; //通过Employee对象来保存,,EF内部自动将其存储在两个表中; employeeService.Add(e); Assert.AreEqual(true, e.ID > 0); #endregion #region UserInfo //创建UserInfo中间层对象 IUserInfoService userInfoService = new UserInfoService(); //创建Employee实体对象 Employee employee = new Employee(); employee.LoginName = "adm"; employee.LoginPwd = "123"; employee.DelFlag = 0; //创建UserInfo实体对象 UserInfo userInfo = new UserInfo(); userInfo.Phone = "123123113"; userInfo.UserName = "管理员"; userInfo.Sex = 0; userInfo.Address = "shjkfhkl"; userInfo.Sort = "0"; userInfo.Remark = "asjdlf"; userInfo.ModifiedOn = DateTime.Now; userInfo.SubTime = DateTime.Now; //这里关联Employee和UserInfo实体对象 userInfo.Employee = employee; //通过UserInfo实体对象来添加数据,EF内部自动将其存储在两个表中; userInfoService.Add(userInfo); Assert.AreEqual(true, userInfo.ID > 0); #endregion