Skip to content

Commit 1d3484e

Browse files
committed
优化配置
1 parent db8e491 commit 1d3484e

22 files changed

+450
-179
lines changed

dependencies.props

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<Project>
2+
<ItemGroup Condition="'$(TargetFramework)' == 'net45'">
3+
<Reference Include="System.Configuration" />
4+
</ItemGroup>
5+
6+
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
7+
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="2.0.0" />
8+
</ItemGroup>
9+
10+
<ItemGroup>
11+
<ProjectReference Include="..\PaySharp.Core\PaySharp.Core.csproj" />
12+
</ItemGroup>
13+
</Project>

output.props

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<Project>
2+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
3+
<DebugType>none</DebugType>
4+
<DebugSymbols>false</DebugSymbols>
5+
<DocumentationFile>..\..\output\release\netstandard2.0\$(Title).xml</DocumentationFile>
6+
<NoWarn>1701;1702;1705;1591</NoWarn>
7+
<OutputPath>..\..\output\release\</OutputPath>
8+
</PropertyGroup>
9+
</Project>

packaging.props

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<Project>
2+
<PropertyGroup>
3+
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
4+
<PackageProjectUrl>https://github.com/Varorbc/PaySharp</PackageProjectUrl>
5+
<Authors>Varorbc</Authors>
6+
<RepositoryType>git</RepositoryType>
7+
<RepositoryUrl>https://github.com/Varorbc/PaySharp</RepositoryUrl>
8+
<PackageLicenseUrl>https://github.com/Varorbc/PaySharp/blob/master/LICENSE</PackageLicenseUrl>
9+
<Copyright>Varorbc</Copyright>
10+
<SignAssembly>true</SignAssembly>
11+
<AssemblyOriginatorKeyFile>PaySharp.snk</AssemblyOriginatorKeyFile>
12+
<PackageIconUrl>https://github.com/Varorbc/PaySharp/raw/master/logo.png</PackageIconUrl>
13+
</PropertyGroup>
14+
</Project>

sample/PaySharp.Demo(Net)/Global.asax.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
using Autofac;
22
using PaySharp.Alipay;
33
using PaySharp.Core;
4+
using PaySharp.Core.Mvc;
45
using PaySharp.Unionpay;
56
using PaySharp.Wechatpay;
7+
using System;
68
using System.Web;
79
using System.Web.Mvc;
810
using System.Web.Routing;
@@ -19,6 +21,7 @@ protected void Application_Start()
1921
PaySharpConfig.Register(typeof(MvcApplication), containerBuilder, a =>
2022
{
2123
var gateways = new Gateways();
24+
//gateways.RegisterAlipay();
2225

2326
var alipayMerchant = new Alipay.Merchant
2427
{
@@ -35,7 +38,7 @@ protected void Application_Start()
3538
MchId = "1233410002",
3639
Key = "e10adc3849ba56abbe56e056f20f883e",
3740
AppSecret = "51c56b886b5be869567dd389b3e5d1d6",
38-
SslCertPath = "Certs/apiclient_cert.p12",
41+
SslCertPath = AppDomain.CurrentDomain.BaseDirectory + "Certs/apiclient_cert.p12",
3942
SslCertPassword = "1233410002",
4043
NotifyUrl = "http://localhost:61378/Notify"
4144
};
@@ -44,7 +47,7 @@ protected void Application_Start()
4447
{
4548
AppId = "777290058110048",
4649
CertPwd = "000000",
47-
CertPath = "Certs/acp_test_sign.pfx",
50+
CertPath = AppDomain.CurrentDomain.BaseDirectory + "Certs/acp_test_sign.pfx",
4851
NotifyUrl = "http://localhost:61378/Notify",
4952
ReturnUrl = "http://localhost:61378/Notify"
5053
};

sample/PaySharp.Demo(Net)/Web.config

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,22 @@
44
https://go.microsoft.com/fwlink/?LinkId=301880
55
-->
66
<configuration>
7+
<configSections>
8+
<sectionGroup name="paySharp">
9+
<section name="alipays" type="PaySharp.Core.ConfigurationHandler"/>
10+
</sectionGroup>
11+
</configSections>
12+
<paySharp>
13+
<alipays>
14+
<alipay gatewayUrl="https://openapi.alipaydev.com">
15+
<appId>2016081600256163</appId>
16+
<notifyUrl>http://localhost:61378/Notify</notifyUrl>
17+
<returnUrl>http://localhost:61378/Notify</returnUrl>
18+
<alipayPublicKey>MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsW6+mN2E3Oji2DPjSKuYgRzK6MlH9q6W0iM0Yk3R0qbpp5wSesSXqudr2K25gIBOTCchiIbXO7GXt/zEdnhnC32eOaTnonDsnuBWIp+q7LoVx/gvKIX5LTHistCvGli8VW4EDGsu2jAyQXyMPgPrIz+/NzWis/gZsa4TaqVY4SpWRuSgMXxleh2ERB6k0ijK0IYM+Cv5fz1ZPDCgk7EbII2jk2fDxtlMLoN5UYEJCcD8OUyivm3Hti3u1kPolckCCf0xk+80g/4EdmzFAffsVgPeXZrkm5EIuiTTOIeRHXlTg3HtkkCw2Wl0CpYSKBr9Vzv7x0gNvb1wnXPmBJNRgQIDAQAB</alipayPublicKey>
19+
<privatekey>MIIEpAIBAAKCAQEAyC43UbsE5XZ2Pmqg1YgzeCqAMk4HOH8fYHslseeSgKxyDjybjqM0yjGIJry1FRmVvLnY7v8jURgwr7d/pDCSRdoHa6zaxuSzg0OlieNmujae34YZ54PmFxULZW0BHSdzmx3OIYK2GarRECkds531ZzpbLdRXqsxQf5G26JZLIFxmNuh/VjBjJ6Hic1WOFT+FCYyi8om+LkPn3jELeA7LPLXzFqzzxx0vo4yiAePrsX5WucWxf+Y8rZoDhRIy/cPtQECXi9SiAWOJe/82JqjVjfpowf3QN7UJHsA82RBloAS4lvvDGJA7a+8DDlqpqPer8cS41Dv5r39iqtJUybDqoQIDAQABAoIBAHi39kBhiihe8hvd7bQX+QIEj17G02/sqZ1jZm4M+rqCRB31ytGP9qvghvzlXEanMTeo0/v8/O1Qqzusa1s2t19MhqEWkrDTBraoOtIWwsKVYeXmVwTY9A8Db+XwgHV2by8iIEbxLqP38S/Pu8uv/GgONyJCJcQohnsIAsfsqs2OGggz+PplZaXJfUkPomWkRdHM9ZWWDLrCIlmRSHLmhHEtFJaXD083kqo437qra58Amw/n+2gH57utbAQ9V3YQFjD8zW511prC+mB6N/WUlaLstkxswGJ16obEJfQ0r8wYHx14ep6UKGyi3YXlMHcteI8gz+uFx4RuVV9EotdXagECgYEA7AEz9oPFYlW1H15OkDGy8yBnpJwIBu2CQLxINsxhrLIAZ2Bgxqcsv+D9CpnYCBDisbXoGoyMK6XaSypBMRKe2y8yRv4c+w00rcKHtGfRjzSJ5NQO0Tv+q8vKY+cd6BuJ6OUQw82ICLANIfHJZNxtvtTCmmqBwSJDpcQJQXmKXTECgYEA2SQCSBWZZONkvhdJ15K+4IHP2HRbYWi+C1OvKzUiK5bdJm77zia4yJEJo5Y/sY3mV3OK0Bgb7IAaxL3i0oH+WNTwbNoGpMlYHKuj4x1453ITyjOwPNj6g27FG1YSIDzhB6ZC4dBlkehi/7gIlIiQt1wkIZ+ltOqgI5IqIdXoSHECgYB3zCiHYt4oC1+UW7e/hCrVNUbHDRkaAygSGkEB5/9QvU5tK0QUsrmJcPihj/RUK9YW5UK7b0qbwWWsr/dFpLEUi8GWvdkSKuLprQxbrDN44O96Q5Z96Vld9WV4DtJkhs4bdWNsMQFzf4I7D9PuKeJfcvqRjaztz6nNFFSqcrqkkQKBgQCJKlUCohpG/9notp9fvQQ0n+viyQXcj6TVVOSnf6X5MRC8MYmBHTbHA8+59bSAfanO/l7muwQQro+6TlUVMyaviLvjlwpxV/sACXC6jCiO06IqreIbXdlJ41RBw2op0Ss5gM5pBRLUS58V+HP7GBWKrnrofofXtAq6zZ8txok4EQKBgQCXrTeGMs7ECfehLz64qZtPkiQbNwupg938Z40Qru/G1GR9u0kmN7ibTyYauI6NNVHGEZa373EBEkacfN+kkkLQMs1tj5Zrlw+iITm+ad/irpXQZS/NHCcrg6h82vu0LcgiKnHKlmW6K5ne0w4LqmsmRCm7JdJjt9WlapAs0ticiw==</privatekey>
20+
</alipay>
21+
</alipays>
22+
</paySharp>
723
<appSettings>
824
<add key="webpages:Version" value="3.0.0.0" />
925
<add key="webpages:Enabled" value="false" />

sample/PaySharp.Demo/appsettings.json

Lines changed: 33 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,34 +6,37 @@
66
}
77
},
88
"AllowedHosts": "*",
9-
"Alipay": [
10-
{
11-
"AppId": "2016081600256163",
12-
"NotifyUrl": "http://localhost:61377/Notify",
13-
"ReturnUrl": "http://localhost:61377/Notify",
14-
"AlipayPublicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsW6+mN2E3Oji2DPjSKuYgRzK6MlH9q6W0iM0Yk3R0qbpp5wSesSXqudr2K25gIBOTCchiIbXO7GXt/zEdnhnC32eOaTnonDsnuBWIp+q7LoVx/gvKIX5LTHistCvGli8VW4EDGsu2jAyQXyMPgPrIz+/NzWis/gZsa4TaqVY4SpWRuSgMXxleh2ERB6k0ijK0IYM+Cv5fz1ZPDCgk7EbII2jk2fDxtlMLoN5UYEJCcD8OUyivm3Hti3u1kPolckCCf0xk+80g/4EdmzFAffsVgPeXZrkm5EIuiTTOIeRHXlTg3HtkkCw2Wl0CpYSKBr9Vzv7x0gNvb1wnXPmBJNRgQIDAQAB",
15-
"Privatekey": "MIIEpAIBAAKCAQEAyC43UbsE5XZ2Pmqg1YgzeCqAMk4HOH8fYHslseeSgKxyDjybjqM0yjGIJry1FRmVvLnY7v8jURgwr7d/pDCSRdoHa6zaxuSzg0OlieNmujae34YZ54PmFxULZW0BHSdzmx3OIYK2GarRECkds531ZzpbLdRXqsxQf5G26JZLIFxmNuh/VjBjJ6Hic1WOFT+FCYyi8om+LkPn3jELeA7LPLXzFqzzxx0vo4yiAePrsX5WucWxf+Y8rZoDhRIy/cPtQECXi9SiAWOJe/82JqjVjfpowf3QN7UJHsA82RBloAS4lvvDGJA7a+8DDlqpqPer8cS41Dv5r39iqtJUybDqoQIDAQABAoIBAHi39kBhiihe8hvd7bQX+QIEj17G02/sqZ1jZm4M+rqCRB31ytGP9qvghvzlXEanMTeo0/v8/O1Qqzusa1s2t19MhqEWkrDTBraoOtIWwsKVYeXmVwTY9A8Db+XwgHV2by8iIEbxLqP38S/Pu8uv/GgONyJCJcQohnsIAsfsqs2OGggz+PplZaXJfUkPomWkRdHM9ZWWDLrCIlmRSHLmhHEtFJaXD083kqo437qra58Amw/n+2gH57utbAQ9V3YQFjD8zW511prC+mB6N/WUlaLstkxswGJ16obEJfQ0r8wYHx14ep6UKGyi3YXlMHcteI8gz+uFx4RuVV9EotdXagECgYEA7AEz9oPFYlW1H15OkDGy8yBnpJwIBu2CQLxINsxhrLIAZ2Bgxqcsv+D9CpnYCBDisbXoGoyMK6XaSypBMRKe2y8yRv4c+w00rcKHtGfRjzSJ5NQO0Tv+q8vKY+cd6BuJ6OUQw82ICLANIfHJZNxtvtTCmmqBwSJDpcQJQXmKXTECgYEA2SQCSBWZZONkvhdJ15K+4IHP2HRbYWi+C1OvKzUiK5bdJm77zia4yJEJo5Y/sY3mV3OK0Bgb7IAaxL3i0oH+WNTwbNoGpMlYHKuj4x1453ITyjOwPNj6g27FG1YSIDzhB6ZC4dBlkehi/7gIlIiQt1wkIZ+ltOqgI5IqIdXoSHECgYB3zCiHYt4oC1+UW7e/hCrVNUbHDRkaAygSGkEB5/9QvU5tK0QUsrmJcPihj/RUK9YW5UK7b0qbwWWsr/dFpLEUi8GWvdkSKuLprQxbrDN44O96Q5Z96Vld9WV4DtJkhs4bdWNsMQFzf4I7D9PuKeJfcvqRjaztz6nNFFSqcrqkkQKBgQCJKlUCohpG/9notp9fvQQ0n+viyQXcj6TVVOSnf6X5MRC8MYmBHTbHA8+59bSAfanO/l7muwQQro+6TlUVMyaviLvjlwpxV/sACXC6jCiO06IqreIbXdlJ41RBw2op0Ss5gM5pBRLUS58V+HP7GBWKrnrofofXtAq6zZ8txok4EQKBgQCXrTeGMs7ECfehLz64qZtPkiQbNwupg938Z40Qru/G1GR9u0kmN7ibTyYauI6NNVHGEZa373EBEkacfN+kkkLQMs1tj5Zrlw+iITm+ad/irpXQZS/NHCcrg6h82vu0LcgiKnHKlmW6K5ne0w4LqmsmRCm7JdJjt9WlapAs0ticiw=="
16-
}
17-
],
18-
"Wechatpay": [
19-
{
20-
"AppId": "wx2428e34e0e7dc6ef",
21-
"MchId": "1233410002",
22-
"Key": "e10adc3849ba56abbe56e056f20f883e",
23-
"AppSecret": "51c56b886b5be869567dd389b3e5d1d6",
24-
"PublicKey": "",
25-
"SslCertPath": "Certs/apiclient_cert.p12",
26-
"SslCertPassword": "1233410002",
27-
"NotifyUrl": "http://localhost:61377/Notify"
28-
}
29-
],
30-
"Unionpay": [
31-
{
32-
"AppId": "777290058110048",
33-
"CertPwd": "000000",
34-
"CertPath": "Certs/acp_test_sign.pfx",
35-
"NotifyUrl": "http://localhost:61377/Notify",
36-
"ReturnUrl": "http://localhost:61377/Notify"
37-
}
38-
]
9+
"PaySharp": {
10+
"Alipays": [
11+
{
12+
"AppId": "2016081600256163",
13+
"NotifyUrl": "http://localhost:61377/Notify",
14+
"ReturnUrl": "http://localhost:61377/Notify",
15+
"AlipayPublicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsW6+mN2E3Oji2DPjSKuYgRzK6MlH9q6W0iM0Yk3R0qbpp5wSesSXqudr2K25gIBOTCchiIbXO7GXt/zEdnhnC32eOaTnonDsnuBWIp+q7LoVx/gvKIX5LTHistCvGli8VW4EDGsu2jAyQXyMPgPrIz+/NzWis/gZsa4TaqVY4SpWRuSgMXxleh2ERB6k0ijK0IYM+Cv5fz1ZPDCgk7EbII2jk2fDxtlMLoN5UYEJCcD8OUyivm3Hti3u1kPolckCCf0xk+80g/4EdmzFAffsVgPeXZrkm5EIuiTTOIeRHXlTg3HtkkCw2Wl0CpYSKBr9Vzv7x0gNvb1wnXPmBJNRgQIDAQAB",
16+
"Privatekey": "MIIEpAIBAAKCAQEAyC43UbsE5XZ2Pmqg1YgzeCqAMk4HOH8fYHslseeSgKxyDjybjqM0yjGIJry1FRmVvLnY7v8jURgwr7d/pDCSRdoHa6zaxuSzg0OlieNmujae34YZ54PmFxULZW0BHSdzmx3OIYK2GarRECkds531ZzpbLdRXqsxQf5G26JZLIFxmNuh/VjBjJ6Hic1WOFT+FCYyi8om+LkPn3jELeA7LPLXzFqzzxx0vo4yiAePrsX5WucWxf+Y8rZoDhRIy/cPtQECXi9SiAWOJe/82JqjVjfpowf3QN7UJHsA82RBloAS4lvvDGJA7a+8DDlqpqPer8cS41Dv5r39iqtJUybDqoQIDAQABAoIBAHi39kBhiihe8hvd7bQX+QIEj17G02/sqZ1jZm4M+rqCRB31ytGP9qvghvzlXEanMTeo0/v8/O1Qqzusa1s2t19MhqEWkrDTBraoOtIWwsKVYeXmVwTY9A8Db+XwgHV2by8iIEbxLqP38S/Pu8uv/GgONyJCJcQohnsIAsfsqs2OGggz+PplZaXJfUkPomWkRdHM9ZWWDLrCIlmRSHLmhHEtFJaXD083kqo437qra58Amw/n+2gH57utbAQ9V3YQFjD8zW511prC+mB6N/WUlaLstkxswGJ16obEJfQ0r8wYHx14ep6UKGyi3YXlMHcteI8gz+uFx4RuVV9EotdXagECgYEA7AEz9oPFYlW1H15OkDGy8yBnpJwIBu2CQLxINsxhrLIAZ2Bgxqcsv+D9CpnYCBDisbXoGoyMK6XaSypBMRKe2y8yRv4c+w00rcKHtGfRjzSJ5NQO0Tv+q8vKY+cd6BuJ6OUQw82ICLANIfHJZNxtvtTCmmqBwSJDpcQJQXmKXTECgYEA2SQCSBWZZONkvhdJ15K+4IHP2HRbYWi+C1OvKzUiK5bdJm77zia4yJEJo5Y/sY3mV3OK0Bgb7IAaxL3i0oH+WNTwbNoGpMlYHKuj4x1453ITyjOwPNj6g27FG1YSIDzhB6ZC4dBlkehi/7gIlIiQt1wkIZ+ltOqgI5IqIdXoSHECgYB3zCiHYt4oC1+UW7e/hCrVNUbHDRkaAygSGkEB5/9QvU5tK0QUsrmJcPihj/RUK9YW5UK7b0qbwWWsr/dFpLEUi8GWvdkSKuLprQxbrDN44O96Q5Z96Vld9WV4DtJkhs4bdWNsMQFzf4I7D9PuKeJfcvqRjaztz6nNFFSqcrqkkQKBgQCJKlUCohpG/9notp9fvQQ0n+viyQXcj6TVVOSnf6X5MRC8MYmBHTbHA8+59bSAfanO/l7muwQQro+6TlUVMyaviLvjlwpxV/sACXC6jCiO06IqreIbXdlJ41RBw2op0Ss5gM5pBRLUS58V+HP7GBWKrnrofofXtAq6zZ8txok4EQKBgQCXrTeGMs7ECfehLz64qZtPkiQbNwupg938Z40Qru/G1GR9u0kmN7ibTyYauI6NNVHGEZa373EBEkacfN+kkkLQMs1tj5Zrlw+iITm+ad/irpXQZS/NHCcrg6h82vu0LcgiKnHKlmW6K5ne0w4LqmsmRCm7JdJjt9WlapAs0ticiw==",
17+
"GatewayUrl": "https://openapi.alipaydev.com"
18+
}
19+
],
20+
"Wechatpays": [
21+
{
22+
"AppId": "wx2428e34e0e7dc6ef",
23+
"MchId": "1233410002",
24+
"Key": "e10adc3849ba56abbe56e056f20f883e",
25+
"AppSecret": "51c56b886b5be869567dd389b3e5d1d6",
26+
"PublicKey": "",
27+
"SslCertPath": "Certs/apiclient_cert.p12",
28+
"SslCertPassword": "1233410002",
29+
"NotifyUrl": "http://localhost:61377/Notify"
30+
}
31+
],
32+
"Unionpays": [
33+
{
34+
"AppId": "777290058110048",
35+
"CertPwd": "000000",
36+
"CertPath": "Certs/acp_test_sign.pfx",
37+
"NotifyUrl": "http://localhost:61377/Notify",
38+
"ReturnUrl": "http://localhost:61377/Notify"
39+
}
40+
]
41+
}
3942
}
Lines changed: 10 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,21 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

3+
<Import Project="../../packaging.props" />
4+
35
<PropertyGroup>
46
<TargetFrameworks>net45;netstandard2.0</TargetFrameworks>
5-
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
6-
<PackageProjectUrl>https://github.com/Varorbc/PaySharp</PackageProjectUrl>
77
<Title>PaySharp.Alipay</Title>
8-
<Authors>Varorbc</Authors>
98
<Description>支付宝支付</Description>
10-
<Version>1.0.0</Version>
9+
<Version>1.0.1</Version>
1110
<PackageTags>dotnetcore;pay;alipay;</PackageTags>
12-
<RepositoryType>git</RepositoryType>
13-
<RepositoryUrl>https://github.com/Varorbc/PaySharp</RepositoryUrl>
14-
<PackageLicenseUrl>https://github.com/Varorbc/PaySharp/blob/master/LICENSE</PackageLicenseUrl>
15-
<Copyright>Varorbc</Copyright>
16-
<SignAssembly>true</SignAssembly>
17-
<AssemblyOriginatorKeyFile>PaySharp.snk</AssemblyOriginatorKeyFile>
18-
<PackageIconUrl>https://github.com/Varorbc/PaySharp/raw/master/logo.png</PackageIconUrl>
11+
<PackageReleaseNotes>
12+
1.Net环境添加通过配置文件注册方式
13+
2.修改Core下配置方式
14+
</PackageReleaseNotes>
1915
</PropertyGroup>
2016

21-
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
22-
<DebugType>none</DebugType>
23-
<DebugSymbols>false</DebugSymbols>
24-
<DocumentationFile>..\..\output\release\netstandard2.0\PaySharp.Alipay.xml</DocumentationFile>
25-
<NoWarn>1701;1702;1705;1591</NoWarn>
26-
<OutputPath>..\..\output\release\</OutputPath>
27-
</PropertyGroup>
28-
29-
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
30-
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="2.0.0" />
31-
</ItemGroup>
32-
33-
<ItemGroup>
34-
<ProjectReference Include="..\PaySharp.Core\PaySharp.Core.csproj" />
35-
</ItemGroup>
17+
<Import Project="../../output.props" />
18+
19+
<Import Project="../../dependencies.props" />
3620

3721
</Project>
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
#if NET45
2+
using PaySharp.Alipay;
3+
using System;
4+
using System.Collections;
5+
using System.Collections.Generic;
6+
using System.Configuration;
7+
8+
namespace PaySharp.Core.Mvc
9+
{
10+
public static class PaySharpConfigExtensions
11+
{
12+
public static IGateways RegisterAlipay(this IGateways gateways, Action<Merchant> action)
13+
{
14+
if (action != null)
15+
{
16+
var merchant = new Merchant();
17+
action(merchant);
18+
gateways.Add(new AlipayGateway(merchant));
19+
}
20+
21+
return gateways;
22+
}
23+
24+
public static IGateways RegisterAlipay(this IGateways gateways)
25+
{
26+
var merchants = (List<Hashtable>)ConfigurationManager.GetSection("paySharp/alipays");
27+
if (merchants == null)
28+
{
29+
return gateways;
30+
}
31+
32+
foreach (var item in merchants)
33+
{
34+
var alipayGateway = new AlipayGateway(new Merchant
35+
{
36+
AppId = item["appId"].ToString(),
37+
AlipayPublicKey = item["alipayPublicKey"].ToString(),
38+
NotifyUrl = item["notifyUrl"].ToString(),
39+
Privatekey = item["privatekey"].ToString(),
40+
ReturnUrl = item["returnUrl"].ToString()
41+
});
42+
43+
var gatewayUrl = item["gatewayUrl"].ToString();
44+
if (!string.IsNullOrEmpty(gatewayUrl))
45+
{
46+
alipayGateway.GatewayUrl = gatewayUrl;
47+
}
48+
49+
gateways.Add(alipayGateway);
50+
}
51+
52+
return gateways;
53+
}
54+
}
55+
}
56+
57+
#endif

src/PaySharp.Alipay/ServiceCollectionExtensions.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,19 @@ public static IGateways UseAlipay(this IGateways gateways, Action<Merchant> acti
2222

2323
public static IGateways UseAlipay(this IGateways gateways, IConfiguration configuration)
2424
{
25-
var merchants = configuration.GetSection("Alipay").Get<Merchant[]>();
25+
var merchants = configuration.GetSection("PaySharp:Alipays").Get<Merchant[]>();
2626
if (merchants != null)
2727
{
2828
for (int i = 0; i < merchants.Length; i++)
2929
{
30-
gateways.Add(new AlipayGateway(merchants[i]));
30+
var alipayGateway = new AlipayGateway(merchants[i]);
31+
var gatewayUrl = configuration.GetSection($"PaySharp:Alipays:{i}:GatewayUrl").Value;
32+
if (!string.IsNullOrEmpty(gatewayUrl))
33+
{
34+
alipayGateway.GatewayUrl = gatewayUrl;
35+
}
36+
37+
gateways.Add(alipayGateway);
3138
}
3239
}
3340

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,14 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

3+
<Import Project="../../packaging.props" />
4+
35
<PropertyGroup>
46
<TargetFramework>net45</TargetFramework>
5-
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
6-
<PackageProjectUrl>https://github.com/Varorbc/PaySharp</PackageProjectUrl>
77
<Title>PaySharp.Core.Mvc</Title>
8-
<Authors>Varorbc</Authors>
98
<Description>Mvc</Description>
10-
<Version>1.0.0</Version>
9+
<Version>1.0.1</Version>
1110
<PackageTags>dotnetcore;pay;</PackageTags>
12-
<RepositoryType>git</RepositoryType>
13-
<RepositoryUrl>https://github.com/Varorbc/PaySharp</RepositoryUrl>
14-
<PackageLicenseUrl>https://github.com/Varorbc/PaySharp/blob/master/LICENSE</PackageLicenseUrl>
15-
<Copyright>Varorbc</Copyright>
16-
<SignAssembly>true</SignAssembly>
17-
<AssemblyOriginatorKeyFile>PaySharp.snk</AssemblyOriginatorKeyFile>
18-
<PackageIconUrl>https://github.com/Varorbc/PaySharp/raw/master/logo.png</PackageIconUrl>
19-
</PropertyGroup>
20-
21-
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
22-
<DebugType>none</DebugType>
23-
<DebugSymbols>false</DebugSymbols>
24-
<DocumentationFile>..\..\output\release\netstandard2.0\PaySharp.Core.Mvc.xml</DocumentationFile>
25-
<NoWarn>1701;1702;1705;1591</NoWarn>
26-
<OutputPath>..\..\output\release\</OutputPath>
11+
<PackageReleaseNotes>修改命名空间</PackageReleaseNotes>
2712
</PropertyGroup>
2813

2914
<ItemGroup>
@@ -35,4 +20,6 @@
3520
<ProjectReference Include="..\PaySharp.Core\PaySharp.Core.csproj" />
3621
</ItemGroup>
3722

23+
<Import Project="../../output.props" />
24+
3825
</Project>

0 commit comments

Comments
 (0)