public override Task <NotifyReturn> Notify(HttpRequest request) { NotifyReturn notifyReturn = new NotifyReturn(); var body = request.Body; string content = string.Empty; using (StreamReader dRead = new StreamReader(body, Encoding.UTF8)) { content = dRead.ReadToEnd(); } hyNotify j = JsonConvert.DeserializeObject <hyNotify>(content); string P_UserId = j.P_UserId; string P_OrderId = j.P_OrderId; string P_FaceValue = j.P_FaceValue; string P_Notic = j.P_Notic; string P_Return = j.P_Return; string P_ErrCode = j.P_ErrCode; string P_SuccTime = j.P_SuccTime; string P_PostKey = j.P_PostKey; string signstr = string.Format("{0}|{1}|{2}|{3}|{4}|{5}|{6}|{7}", P_UserId, P_OrderId, P_FaceValue, P_Notic, P_Return, P_ErrCode, P_SuccTime, this.MchKey2); string _sign = PayHelper.MD5Hash2(signstr); if (P_Return == "1" && _sign.ToLower() == P_PostKey.ToLower()) { notifyReturn.MchID = this.MchID; notifyReturn.IsCheck = true; } else { notifyReturn.MchID = this.MchID; notifyReturn.IsCheck = false; } return(new Task <NotifyReturn>(() => notifyReturn)); }