public long Create(AuthLoginInfoPoco authLoginInfoPoco)
        {
            AuthCredentials authCredentials = PasswordDerivationUtility.HashCredentials(authLoginInfoPoco.UserName, authLoginInfoPoco.PlainPassword);
              authLoginInfoPoco.HashedPassword = authCredentials.HashedPassword;
              authLoginInfoPoco.PasswordSalt = authCredentials.PasswordSalt;

              var loginInfo = _authDataContext.AuthLoginInfos.Add(ObjectMapper.Instance.Map<AuthLoginInfo>(authLoginInfoPoco));

              _authDataContext.SaveChanges();

              return loginInfo.AuthLoginInfoId;
        }
        public bool Authenticate(AuthLoginInfoPoco authLoginInfoPoco)
        {
            bool isAuthentic = false;
              AuthLoginInfo authLoginInfo = _authDataContext.AuthLoginInfos.FirstOrDefault(x => x.UserName == authLoginInfoPoco.UserName);
              if (authLoginInfo != null)
              {
            string hash = PasswordDerivationUtility.Hash(authLoginInfoPoco.PlainPassword, authLoginInfo.PasswordSalt);
            if (hash == authLoginInfo.HashedPassword)
            {
              isAuthentic = true;
            }
              }

              return isAuthentic;
        }