mirror of
https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.Wechat.git
synced 2025-07-15 05:13:17 +08:00
chore: 升级示例项目为基于 .NET 6.0 的实现
This commit is contained in:
parent
15e9042cad
commit
b2ce287136
@ -38,9 +38,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SKIT.FlurlHttpClient.Wechat
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{35C901ED-C234-4A91-9561-AD89B3BB788D}"
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{35C901ED-C234-4A91-9561-AD89B3BB788D}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SKIT.FlurlHttpClient.Wechat.Api.Sample_Net5", "samples\SKIT.FlurlHttpClient.Wechat.Api.Sample_Net5\SKIT.FlurlHttpClient.Wechat.Api.Sample_Net5.csproj", "{D1B321C9-3004-4645-A78D-A85C152062FA}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SKIT.FlurlHttpClient.Wechat.Api.Sample_Net6", "samples\SKIT.FlurlHttpClient.Wechat.Api.Sample_Net6\SKIT.FlurlHttpClient.Wechat.Api.Sample_Net6.csproj", "{D1B321C9-3004-4645-A78D-A85C152062FA}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net5", "samples\SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net5\SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net5.csproj", "{65E51735-73CE-4E9B-AA65-4BF5E4C8A705}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net6", "samples\SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net6\SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net6.csproj", "{65E51735-73CE-4E9B-AA65-4BF5E4C8A705}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
示例项目位于 _samples/SKIT.FlurlHttpClient.Wechat.Api.Sample_Net5_。
|
示例项目位于 _samples/SKIT.FlurlHttpClient.Wechat.Api.Sample_Net6_。
|
||||||
|
|
||||||
示例项目基于 .NET 5.0 实现,依赖以下第三方库:
|
示例项目基于 .NET 6.0 实现,依赖以下第三方库:
|
||||||
|
|
||||||
- [`DistributedLock`](https://github.com/madelson/DistributedLock):分布式锁。
|
- [`DistributedLock`](https://github.com/madelson/DistributedLock):分布式锁。
|
||||||
|
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
示例项目位于 _samples/SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net5_。
|
示例项目位于 _samples/SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net6_。
|
||||||
|
|
||||||
示例项目基于 .NET 5.0 实现。
|
示例项目基于 .NET 6.0 实现。
|
||||||
|
|
||||||
示例项目实现了以下功能:
|
示例项目实现了以下功能:
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net5.0</TargetFramework>
|
<TargetFramework>net6.0</TargetFramework>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<NullableReferenceTypes>true</NullableReferenceTypes>
|
<NullableReferenceTypes>true</NullableReferenceTypes>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
@ -26,14 +26,14 @@ namespace SKIT.FlurlHttpClient.Wechat.Api.Sample_Net5.Services.HttpClients.Imple
|
|||||||
|
|
||||||
public WechatApiClient Create(string appId)
|
public WechatApiClient Create(string appId)
|
||||||
{
|
{
|
||||||
var wechatAccount = _wechatOptions.Accounts?.FirstOrDefault(e => string.Equals(appId, e.AppId));
|
var wechatAccountOptions = _wechatOptions.Accounts?.FirstOrDefault(e => string.Equals(appId, e.AppId));
|
||||||
if (wechatAccount == null)
|
if (wechatAccountOptions == null)
|
||||||
throw new Exception("未在配置项中找到该 AppId 对应的微信账号。");
|
throw new Exception("未在配置项中找到该 AppId 对应的微信账号。");
|
||||||
|
|
||||||
return new WechatApiClient(new WechatApiClientOptions()
|
return new WechatApiClient(new WechatApiClientOptions()
|
||||||
{
|
{
|
||||||
AppId = wechatAccount.AppId,
|
AppId = wechatAccountOptions.AppId,
|
||||||
AppSecret = wechatAccount.AppSecret
|
AppSecret = wechatAccountOptions.AppSecret
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,7 +1,7 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net5.0</TargetFramework>
|
<TargetFramework>net6.0</TargetFramework>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<NullableReferenceTypes>true</NullableReferenceTypes>
|
<NullableReferenceTypes>true</NullableReferenceTypes>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
@ -15,6 +15,8 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net5.Services.HttpClients.
|
|||||||
|
|
||||||
public CertificateManager Create(string merchantId)
|
public CertificateManager Create(string merchantId)
|
||||||
{
|
{
|
||||||
|
// 注意:这里的工厂方法是为了演示多租户而存在的;如果你的项目只存在唯一一个租户,那么直接注入 `CertificateManager` 就可以
|
||||||
|
|
||||||
return _dict.GetOrAdd(merchantId, new InMemoryCertificateManager());
|
return _dict.GetOrAdd(merchantId, new InMemoryCertificateManager());
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -29,17 +29,19 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Sample_Net5.Services.HttpClients.
|
|||||||
|
|
||||||
public WechatTenpayClient Create(string merchantId)
|
public WechatTenpayClient Create(string merchantId)
|
||||||
{
|
{
|
||||||
var merchantOptions = _tenpayOptions.Merchants?.FirstOrDefault(e => string.Equals(merchantId, e.MerchantId));
|
// 注意:这里的工厂方法是为了演示多租户而存在的;如果你的项目只存在唯一一个租户,那么直接注入 `WechatTenpayClient` 就可以
|
||||||
if (merchantOptions == null)
|
|
||||||
|
var tenpayMerchantOptions = _tenpayOptions.Merchants?.FirstOrDefault(e => string.Equals(merchantId, e.MerchantId));
|
||||||
|
if (tenpayMerchantOptions == null)
|
||||||
throw new Exception("未在配置项中找到该 MerchantId 对应的微信商户号。");
|
throw new Exception("未在配置项中找到该 MerchantId 对应的微信商户号。");
|
||||||
|
|
||||||
return new WechatTenpayClient(new WechatTenpayClientOptions()
|
return new WechatTenpayClient(new WechatTenpayClientOptions()
|
||||||
{
|
{
|
||||||
MerchantId = merchantOptions.MerchantId,
|
MerchantId = tenpayMerchantOptions.MerchantId,
|
||||||
MerchantV3Secret = merchantOptions.SecretV3,
|
MerchantV3Secret = tenpayMerchantOptions.SecretV3,
|
||||||
MerchantCertSerialNumber = merchantOptions.CertSerialNumber,
|
MerchantCertSerialNumber = tenpayMerchantOptions.CertSerialNumber,
|
||||||
MerchantCertPrivateKey = merchantOptions.CertPrivateKey,
|
MerchantCertPrivateKey = tenpayMerchantOptions.CertPrivateKey,
|
||||||
CertificateManager = _tenpayCertificateManagerFactory.Create(merchantOptions.MerchantId),
|
CertificateManager = _tenpayCertificateManagerFactory.Create(tenpayMerchantOptions.MerchantId),
|
||||||
AutoEncryptRequestSensitiveProperty = true,
|
AutoEncryptRequestSensitiveProperty = true,
|
||||||
AutoDecryptResponseSensitiveProperty = true
|
AutoDecryptResponseSensitiveProperty = true
|
||||||
});
|
});
|
Loading…
Reference in New Issue
Block a user