該申請是出於教育目的而創建的。該項目實施存儲庫和依賴注入模式。
它不應用於任何實際業務。如果您決定將其用於實際交易,我不會享有任何可重複性。在執行此操作之前,請確保應用程序符合安全標準。
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許可獲得許可。