Exemple #1
0
        /// <summary>
        /// 授权变更通知推送
        /// </summary>
        /// <param name="postModel"></param>
        /// <param name="inputStream"></param>
        /// <returns></returns>
        public static ResponseAuthorization Authorization_Notification(PostModel postModel, Stream inputStream)
        {
            if (inputStream == null)
            {
                return(null);
            }
            inputStream.Seek(0, SeekOrigin.Begin);//强制调整指针位置
            using (XmlReader xr = XmlReader.Create(inputStream))
            {
                var postDataDocument = XDocument.Load(xr);

                var result = Init(postDataDocument, postModel);

                var resultMessage = new ResponseAuthorization();
                //xml to model
                EntityHelper.FillEntityWithXml(resultMessage, result);
                return(resultMessage);
            }
        }
        public ResponseAuthorization POST(RequestAuthorization requestObject)
        {
            ResponseAuthorization _responseAuth = new ResponseAuthorization()
            {
                Success = false
            };

            if (requestObject != null)
            {
                try
                {
                    using (var db = new LinkedinContext())                                                 // veritabanı connection
                    {
                        var user = db.Users.Where(x => x.Mail == requestObject.UserMail).FirstOrDefault(); // linq ile sorgulama işlemi

                        if (user == null)
                        {
                            throw new ArgumentException("user_not_found");
                        }
                        if (user.Password != requestObject.Password)
                        {
                            throw new ArgumentException("password_error");
                        }

                        _responseAuth.Success = true;
                        _responseAuth.UserId  = user.Id;
                    }
                }
                catch (Exception ex)
                {
                    _responseAuth.Success = false;
                    _responseAuth.Details = ex.Message;
                }
            }

            return(_responseAuth);
        }