该申请是出于教育目的而创建的。该项目实施存储库和依赖注入模式。
它不应用于任何实际业务。如果您决定将其用于实际交易,我不会享有任何可重复性。在执行此操作之前,请确保应用程序符合安全标准。
update-database中运行包装管理器控制台。login: [email protected] password: Qwerty1!您可以在“您的帐户”选项卡上更改它。在“管理面板”设置SMTP设置后,请执行此操作 - 以下步骤。应用程序错误正在app_data/logs中记录。
转到e -shop -engine.Services->服务 - >付款并创建新文件夹。
付款可以从:paymentdetails(打算将数据发送到外部服务器)和PaymentResponse(旨在从外部服务器接收数据)有2个模型类。
创建从ipaymentservice继承的服务界面。然后创建实现。
public class DotPayPaymentService : IDotPayPaymentService
{
private static Settings settings;
public DotPayPaymentService(ISettingsRepository settingsRepository)
{
settings = settingsRepository.Get();
}
// The implementation...
}
现在,转到e -shop -engine.website->控制器 - >付款并创建新的控制器。
控制器应从BasePaymentController继承。
public class DotPayController : BasePaymentController
{
public DotPayController(
IOrderRepository orderRepository,
ICartRepository cartRepository,
ISettingsRepository settingsRepository,
IMailingService mailingService,
IDotPayPaymentService paymentService,
IAppUserManager userManager,
IUnitOfWork unitOfWork)
: base(
orderRepository,
cartRepository,
settingsRepository,
mailingService,
paymentService,
userManager,
unitOfWork)
{
//
}
在AUTOFAC(e -shop -engine.website-> app_start-> autofacconfig)中注册新的付款方式builder.RegisterType<DotPayPaymentService>().As<IDotPayPaymentService>().InstancePerRequest();
转到视图 - >付款 - >选择并添加新付款。切记设置输入元件值与控制器名称<div class="custom-control custom-checkbox form-control-lg"> <input type="radio" name="paymentMethod" class="custom-control-input" id="dotpay" value="DotPay"> <label class="custom-control-label" for="dotpay"> <img src="~/Content/payment/dotpay_logo.jpg" class="payment-img" /> </label> </div>
该项目已根据MIT许可获得许可。