昨天突然想把用户表和登录表分开来放,然后使用一对一关系来设计数据库;
添加数据的时候感觉很好用;可以用任意一个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