| 12345678910111213141516171819202122232425262728293031323334353637 | 
							- using Essensoft.Paylinks.Alipay.Client;
 
- using Essensoft.Paylinks.Alipay.Core;
 
- using Essensoft.Paylinks.Alipay.Mvc;
 
- using Essensoft.Paylinks.Alipay.Mvc.Extensions;
 
- using Essensoft.Paylinks.Alipay.Payments.Notify;
 
- using Microsoft.AspNetCore.Mvc;
 
- using Microsoft.AspNetCore.Mvc.RazorPages;
 
- using Microsoft.Extensions.Options;
 
- namespace Essensoft.Paylinks.Sample.Web.Pages.Alipay.Payments.Notify;
 
- [IgnoreAntiforgeryToken]
 
- public class TradeResultModel(ILogger<TradeResultModel> logger, IAlipayNotifyClient client, IOptions<PaylinksOptions> options) : PageModel
 
- {
 
-     private readonly AlipayClientOptions _options = options.Value.Alipay;
 
-     /// <summary>
 
-     /// 支付成功通知
 
-     /// https://opendocs.alipay.com/open-v3/05pf4k?pathHash=01c6e762
 
-     /// </summary>
 
-     public async Task<IActionResult> OnPostAsync()
 
-     {
 
-         try
 
-         {
 
-             var parameters = await Request.GetAlipayParametersAsync();
 
-             var notify = await client.ExecuteAsync<AlipayTradeStatusSyncNotify>(parameters, _options);
 
-             // 请务必检查系统内业务状态,避免因重复通知遭受损失。
 
-             logger.LogInformation($"支付成功通知: TradeNo:{notify.TradeNo}, TotalAmount:{notify.TotalAmount}");
 
-             return AlipayNotifyResult.Success;
 
-         }
 
-         catch (AlipayException ex)
 
-         {
 
-             logger.LogError(ex.Message);
 
-             return AlipayNotifyResult.Fail;
 
-         }
 
-     }
 
- }
 
 
  |