Kimlik doğrulama veya yönetimden onay bekliyor.
var _user = _userService.Find(x => x.Email == user.Email && x.Password == Crypto.Hash(_pass, "MD5")
&& x.ConfirmPassword == Crypto.Hash(_pass, "MD5"));
burda zaten password kontrolü ettiriyorsun. password nasıl boş geliyor ? demekki listede o kullanıcının şifresi boş ?
ayrıca eğer kullanıcı şifresini update etmeye çalışırsa bu kod çalışmayacak (veya epostasını)
bir not daha ekleme
var _user = _userService.Find(x => x.Email == user.Email && x.Password == Crypto.Hash(_pass, "MD5")
&& x.ConfirmPassword == Crypto.Hash(_pass, "MD5"));
find yerine Any yazarsan (bool döndürür) listede hiç olup olmadığını kontrol edersin (_user != null'dan daha iyi olabilir senin için)