private Utility_class_User BuildUserInternal(T poco, long IdInUseTable, string userName, string password) { Utility_class_User utility_class_User = new Utility_class_User(); //updating Utility_class_User name from poco name utility_class_User.GetType().GetProperties()[0].SetValue(utility_class_User, typeof(T).GetProperties()[0].GetValue(poco)); utility_class_User.GetType().GetProperties()[1].SetValue(utility_class_User, typeof(T).GetProperties()[1].GetValue(poco)); if (password != null) { utility_class_User.GetType().GetProperty("PASSWORD").SetValue(utility_class_User, password); } if (userName != null) { utility_class_User.GetType().GetProperty("USER_NAME").SetValue(utility_class_User, userName); } utility_class_User.GetType().GetProperties()[3].SetValue(utility_class_User, typeof(T).Name); for (int i = 0; i < utility_class_User.GetType().GetProperties().Length; i++) { if (utility_class_User.GetType().GetProperties()[i].Name.ToLower().Contains(typeof(T).Name.ToLower().ChopCharsFromTheEndInverted(7).ToString())) { utility_class_User.GetType().GetProperties()[i].SetValue(utility_class_User, IdInUseTable); } } return(utility_class_User); }
public void Update(T poco, string userName, string password) { SetAnotherDAOInstance(typeof(Utility_class_User)); var poco2 = base.Get((long)poco.GetType().GetProperty("ID").GetValue(poco)); Utility_class_User user = _currentUserDAOMSSQL.GetUserByIdentifier(poco2); user.USER_NAME = userName; user.PASSWORD = password; _currentUserDAOMSSQL.Update(user); var user2 = _currentUserDAOMSSQL.Get(user.ID); if (Statics.ComparsionByEveryPropertyEquals(user, user2)) { throw new RecentlyUpdatedRecordDidntChangedException <Utility_class_User>(user); } typeof(T).GetProperty("USER_ID").SetValue(poco, user.ID); base.Update(poco); var poco3 = Get((long)typeof(T).GetProperty("ID").GetValue(poco)); if (Statics.ComparsionByEveryPropertyEquals <T>(poco3, poco2)) { throw new RecentlyUpdatedRecordDidntChangedException <T>(poco3); } }