protected virtual RequestContext CreateRequest(PayRequestModel requestModel, IRequestMap <RequestMapField> requestMapper)
        {
            //设置订单号
            if (string.IsNullOrWhiteSpace(requestModel.OrderId))
            {
                requestModel[RequestMapField.OrderId] = GenerateOrderId();
            }

            //var evt = WorkContext.Resolve<IPaymentEventHandler>();

            // evt.Posting(requestModel);

            //兼容Money格式
            requestModel.Amount = ConvertAmount(requestModel.Amount);
            requestModel[RequestMapField.Amount] = requestModel.Amount.ToString(CultureInfo.InvariantCulture);
            requestModel[RequestMapField.Mid]    = Settings.Mid;

            AttachRequest(requestModel, requestMapper);
            //合并映射到参数
            requestMapper.Combine(requestModel.MapValues);
            var request = requestMapper.GetMapResult();

            request[SignFieldName] = Sign(request);

            return(CreateRequestContext(request, requestModel, GateWay));
        }