public async Task <bool> AddUserWithDataAnnotation(User user, string methodName) { try { if (String.IsNullOrEmpty(methodName)) { ValidationTool.Validate(new UserValidator(), user); UserValidator validator = new UserValidator(); ValidationResult result = validator.Validate(user); } else { // ValidationTool.Validate(new UserValidatorNotNull(), user); UserValidatorNotNull validator = new UserValidatorNotNull(); ValidationResult result = validator.Validate(user); if (!result.IsValid) { return(false); } } return(await _userDal.AddAsync(user)); } catch (Exception ex) { return(false); } }
public bool SocialUserOperation(int socialType, string socialID, string email, string username, string firstname, string lastname, string methodName) { //bu kullanıcı daha once kayıt olmuşmu SocialUser socialUser = _socialUserDal.Get(t => t.SOCIALID == socialID && t.SocialType == socialType); //daha önce kayıt olmamış ise if (socialUser == null) { //bir kullanıcı tanımlama User user = new User { ActiveStatus = (int)SystemConstannts.Situation.SOCİALUSER, Name = firstname, Surname = lastname, isActive = true, Password = Common.RandomSfr.Generate(8), AccountCreateDate = DateTime.Now, AccountActiveDate = DateTime.Now, Address = "hdfdjfdk jdhdfjd", PhoneNumber = "12344555" }; user.Tokens = new List <Token>(); //o kullanıcıyı socialUser olarak atama socialUser = new SocialUser { CreateDate = DateTime.Now, SocialType = socialType, SOCIALID = socialID, UserID = user.ID }; //o kullanıcıya token oluşturma Token token = new Token { StartDate = DateTime.Now, ExpireDate = DateTime.Now.AddHours(6), TokenValue = Security.sha512encrypt(RandomSfr.Generate(20)), }; //user.Tokens.Add(token); HttpCookie c*k = new HttpCookie("userAuth", token.TokenValue); c*k.Expires = DateTime.Now.AddHours(6); HttpContext.Current.Response.Cookies.Add(c*k); HttpContext.Current.Session["User"] = user; //oluşturulan user ve socialuser ı database e kayıt etme // int eklenenUserID = _userDal.UserAddReturnUserId(user); //var userr = _userDal.Get(t => t.Name == user.Name && t.Surname == user.Surname && t.Password == user.Password); // socialUser.UserID = eklenenUserID; if (String.IsNullOrEmpty(methodName)) { //ValidationTool.Validate(new UserValidator(), user); UserValidator validator = new UserValidator(); ValidationResult result = validator.Validate(user); // TANSU BURAYA DUSMESI LAZIM CODUN // Kullaniciyi eklemeden buraya breakpoint koyar misin bakalim buraya dusucek mi // Tam _socialUserDal.Add(socialUser); un oraya koy ekleme yapmasin ama oraya dustugunu gorelim //oluşturulan user ve socialuser ı database e kayıt etme user.Tokens.Add(token); int eklenenUserID = _userDal.UserAddReturnUserId(user); //var userr = _userDal.Get(t => t.Name == user.Name && t.Surname == user.Surname && t.Password == user.Password); socialUser.UserID = eklenenUserID; _socialUserDal.Add(socialUser); } else { ValidationTool.Validate(new UserValidatorNotNull(), user); UserValidatorNotNull validator = new UserValidatorNotNull(); ValidationResult result = validator.Validate(user); } // _socialUserDal.Add(socialUser); buradaydi If icerisine aldim try { return(true); } catch (Exception ex) { return(false); } } else { int id = socialUser.UserID; Token tkn = _tokenDal.Get(t => t.User_ID == id); List <SocialUser> socialUserEager; if (tkn.ExpireDate < DateTime.Now) { //bu kullanıcı daha once kayıt olmuş ise ve token expiredate zamanı geçmiş ise Token ekle Token token = new Token { StartDate = DateTime.Now, ExpireDate = DateTime.Now.AddHours(6), TokenValue = Security.sha512encrypt(RandomSfr.Generate(20)), }; //socialUser.User.Tokens.Add(token); işlemi için oluşturulan EagerLoadingUser() mettodundan socialuser alma socialUserEager = EagerLoadingUser(); foreach (var item in socialUserEager) { item.User.Tokens.Add(token); } HttpCookie c*k = new HttpCookie("userAuth", token.TokenValue); c*k.Expires = DateTime.Now.AddHours(6); HttpContext.Current.Response.Cookies.Add(c*k); } socialUserEager = EagerLoadingUser(); foreach (var item in socialUserEager) { HttpContext.Current.Session["User"] = item.User; } try { return(true); } catch (Exception ex) { return(false); } } return(false); }