Browse Source

Merge pull request #163 from colinin/4.0

Upgrade Abp Framework 4.0.0
pull/177/head
cKey 5 years ago
committed by GitHub
parent
commit
2827cbe806
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      .gitignore
  2. 14
      aspnet-core/LINGYUN.MicroService.ApiGateway.sln
  3. 2
      aspnet-core/common.props
  4. 2
      aspnet-core/configuration/account/AuthServer.Host/appsettings.Development.json
  5. 2
      aspnet-core/configuration/admin/LINGYUN.Abp.BackendAdmin.HttpApi.Host/appsettings.Development.json
  6. 19
      aspnet-core/configuration/apigateway/LINGYUN.ApiGateway.Host/appsettings.Development.json
  7. 3
      aspnet-core/configuration/apigateway/LINGYUN.ApiGateway.HttpApi.Host/appsettings.Development.json
  8. 2
      aspnet-core/configuration/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/appsettings.Development.json
  9. 2
      aspnet-core/configuration/messages/LINGYUN.Abp.MessageService.HttpApi.Host/appsettings.Development.json
  10. 18
      aspnet-core/configuration/platform/LINGYUN.Platform.HttpApi.Host/appsettings.Development.json
  11. 2
      aspnet-core/modules/account/LINGYUN.Abp.Account.Application.Contracts/LINGYUN.Abp.Account.Application.Contracts.csproj
  12. 4
      aspnet-core/modules/account/LINGYUN.Abp.Account.Application/LINGYUN.Abp.Account.Application.csproj
  13. 4
      aspnet-core/modules/account/LINGYUN.Abp.Account.HttpApi/LINGYUN.Abp.Account.HttpApi.csproj
  14. 26
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN.ApiGateWay.Admin.Domain.Shared.csproj
  15. 32
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/ApiGateWayAdminDomainSharedModule.cs
  16. 8
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/HostAndPortConsts.cs
  17. 7
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Http/HttpDelegatingHandlerConsts.cs
  18. 10
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Localization/ApiGateWayAdminResource.cs
  19. 5
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Localization/Resources/en.json
  20. 6
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Localization/Resources/zh-Hans.json
  21. 13
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/RouteGroupAppKey.cs
  22. 17
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN.ApiGateWay.Admin.Domain.csproj
  23. 12
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/ApiGateWayAdminDomainModule.cs
  24. 12
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Globals/Global.cs
  25. 62
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/HostAndPort.cs
  26. 13
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/DownstreamHttpMethod.cs
  27. 45
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpDelegatingHandler.cs
  28. 43
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpHandler.cs
  29. 51
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpHeader.cs
  30. 45
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpMethod.cs
  31. 51
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpQuery.cs
  32. 13
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/UpstreamHttpMethod.cs
  33. 37
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/LoadBalancer.cs
  34. 32
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/QoS.cs
  35. 57
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/RateLimitRule.cs
  36. 348
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/Route.cs
  37. 20
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAddRequestHttpHeader.cs
  38. 20
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAddToRequestClaim.cs
  39. 20
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAddToRequestHttpQuery.cs
  40. 45
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAllowedScope.cs
  41. 53
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAuthentication.cs
  42. 22
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteCache.cs
  43. 19
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteDownstreamHostAndPort.cs
  44. 21
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteDownstreamHttpMethod.cs
  45. 20
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteDownstreamTransformHttpHeader.cs
  46. 21
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteHttpDelegatingHandler.cs
  47. 20
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteHttpHandler.cs
  48. 11
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteHttpMethod.cs
  49. 23
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteLoadBalancer.cs
  50. 22
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteQos.cs
  51. 23
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteRateLimitRule.cs
  52. 20
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteRequirementClaim.cs
  53. 21
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteUpstreamHttpMethod.cs
  54. 20
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteUpstreamTransformHttpHeader.cs
  55. 50
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/Claim.cs
  56. 34
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteClientWhite.cs
  57. 40
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteIPBlock.cs
  58. 41
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteIPWhite.cs
  59. 56
      aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteSecurity.cs
  60. 4
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN.ApiGateway.Application.Contracts.csproj
  61. 6
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/AggregateReRouteDto.cs
  62. 6
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/DynamicReRouteDto.cs
  63. 6
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/GlobalConfigurationDto.cs
  64. 7
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/ReRouteDto.cs
  65. 4
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application/LINGYUN.ApiGateway.Application.csproj
  66. 2
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Domain.Shared/LINGYUN.ApiGateway.Domain.Shared.csproj
  67. 30
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Domain.Shared/Newtonsoft/Json/HexLongConverter.cs
  68. 4
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Domain/LINGYUN.ApiGateway.Domain.csproj
  69. 6
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.EntityFrameworkCore/LINGYUN.ApiGateway.EntityFrameworkCore.csproj
  70. 2
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.HttpApi.Client/LINGYUN.ApiGateway.HttpApi.Client.csproj
  71. 4
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.HttpApi/LINGYUN.ApiGateway.HttpApi.csproj
  72. 3
      aspnet-core/modules/apigateway/LINGYUN.ApiGateway.HttpApi/LINGYUN/ApiGateway/Ocelot/GlobalConfigurationController.cs
  73. 10
      aspnet-core/modules/auditing/LINGYUN.Abp.Auditing.Application.Contracts/LINGYUN.Abp.Auditing.Application.Contracts.csproj
  74. 8
      aspnet-core/modules/auditing/LINGYUN.Abp.Auditing.Application/LINGYUN.Abp.Auditing.Application.csproj
  75. 4
      aspnet-core/modules/auditing/LINGYUN.Abp.Auditing.HttpApi/LINGYUN.Abp.Auditing.HttpApi.csproj
  76. 6
      aspnet-core/modules/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN.Abp.Aliyun.csproj
  77. 6
      aspnet-core/modules/cloud-tencent/LINGYUN.Abp.Tencent/LINGYUN.Abp.Tencent.csproj
  78. 2
      aspnet-core/modules/common/LINGYUN.Abp.Aliyun.Authorization/LINGYUN.Abp.Aliyun.Authorization.csproj
  79. 8
      aspnet-core/modules/common/LINGYUN.Abp.AspNetCore.SignalR.Protocol.Json/LINGYUN.Abp.AspNetCore.SignalR.Protocol.Json.csproj
  80. 4
      aspnet-core/modules/common/LINGYUN.Abp.AspNetCore.SignalR/LINGYUN.Abp.AspNetCore.SignalR.JwtToken.csproj
  81. 4
      aspnet-core/modules/common/LINGYUN.Abp.BackgroundJobs.Hangfire/LINGYUN.Abp.BackgroundJobs.Hangfire.csproj
  82. 2
      aspnet-core/modules/common/LINGYUN.Abp.BackgroundJobs/LINGYUN.Abp.BackgroundJobs.csproj
  83. 2
      aspnet-core/modules/common/LINGYUN.Abp.BlobStoring.Aliyun/LINGYUN.Abp.BlobStoring.Aliyun.csproj
  84. 6
      aspnet-core/modules/common/LINGYUN.Abp.DistributedLock.Redis/LINGYUN.Abp.DistributedLock.Redis.csproj
  85. 6
      aspnet-core/modules/common/LINGYUN.Abp.EventBus.CAP/LINGYUN.Abp.EventBus.CAP.csproj
  86. 2
      aspnet-core/modules/common/LINGYUN.Abp.ExceptionHandling.Emailing/LINGYUN.Abp.ExceptionHandling.Emailing.csproj
  87. 2
      aspnet-core/modules/common/LINGYUN.Abp.ExceptionHandling.Notifications/LINGYUN.Abp.ExceptionHandling.Notifications.csproj
  88. 2
      aspnet-core/modules/common/LINGYUN.Abp.ExceptionHandling/LINGYUN.Abp.ExceptionHandling.csproj
  89. 4
      aspnet-core/modules/common/LINGYUN.Abp.Features.LimitValidation.Redis/LINGYUN.Abp.Features.LimitValidation.Redis.csproj
  90. 2
      aspnet-core/modules/common/LINGYUN.Abp.Features.LimitValidation/LINGYUN.Abp.Features.LimitValidation.csproj
  91. 6
      aspnet-core/modules/common/LINGYUN.Abp.Hangfire.MySqlStorage/LINGYUN.Abp.Hangfire.Storage.MySql.csproj
  92. 8
      aspnet-core/modules/common/LINGYUN.Abp.Hangfire.MySqlStorage/LINGYUN/Abp/Hangfire/Storage/MySql/AbpHangfireMySqlStorageModule.cs
  93. 2
      aspnet-core/modules/common/LINGYUN.Abp.Hangfire.Storage.SqlServer/LINGYUN.Abp.Hangfire.Storage.SqlServer.csproj
  94. 6
      aspnet-core/modules/common/LINGYUN.Abp.IM.SignalR/LINGYUN.Abp.IM.SignalR.csproj
  95. 4
      aspnet-core/modules/common/LINGYUN.Abp.IM/LINGYUN.Abp.IM.csproj
  96. 8
      aspnet-core/modules/common/LINGYUN.Abp.Location.Baidu/LINGYUN.Abp.Location.Baidu.csproj
  97. 8
      aspnet-core/modules/common/LINGYUN.Abp.Location.Tencent/LINGYUN.Abp.Location.Tencent.csproj
  98. 2
      aspnet-core/modules/common/LINGYUN.Abp.Location/LINGYUN.Abp.Location.csproj
  99. 6
      aspnet-core/modules/common/LINGYUN.Abp.Notifications.SignalR/LINGYUN.Abp.Notifications.SignalR.csproj
  100. 2
      aspnet-core/modules/common/LINGYUN.Abp.Notifications.Sms/LINGYUN.Abp.Notifications.Sms.csproj

1
.gitignore

@ -9,6 +9,7 @@ bin
Logs
appsettings.json
appsettings.*.json
tempkey.jwk
.vs
/tests/e2e/videos/

14
aspnet-core/LINGYUN.MicroService.ApiGateway.sln

@ -31,10 +31,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "common", "common", "{D6629D
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.EventBus.CAP", "modules\common\LINGYUN.Abp.EventBus.CAP\LINGYUN.Abp.EventBus.CAP.csproj", "{1DA1835B-9EA4-4095-A8CF-10E2778206D3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.ApiGateWay.Admin.Domain.Shared", "modules\apigateway\LINGYUN.ApiGateWay.Admin.Domain.Shared\LINGYUN.ApiGateWay.Admin.Domain.Shared.csproj", "{1CC3B44E-213A-4853-8128-9935F2A4C5D4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.ApiGateWay.Admin.Domain", "modules\apigateway\LINGYUN.ApiGateWay.Admin.Domain\LINGYUN.ApiGateWay.Admin.Domain.csproj", "{1D548FA0-2A8F-455F-8814-F152751FB738}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -81,14 +77,6 @@ Global
{1DA1835B-9EA4-4095-A8CF-10E2778206D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1DA1835B-9EA4-4095-A8CF-10E2778206D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1DA1835B-9EA4-4095-A8CF-10E2778206D3}.Release|Any CPU.Build.0 = Release|Any CPU
{1CC3B44E-213A-4853-8128-9935F2A4C5D4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1CC3B44E-213A-4853-8128-9935F2A4C5D4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1CC3B44E-213A-4853-8128-9935F2A4C5D4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1CC3B44E-213A-4853-8128-9935F2A4C5D4}.Release|Any CPU.Build.0 = Release|Any CPU
{1D548FA0-2A8F-455F-8814-F152751FB738}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1D548FA0-2A8F-455F-8814-F152751FB738}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1D548FA0-2A8F-455F-8814-F152751FB738}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1D548FA0-2A8F-455F-8814-F152751FB738}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -106,8 +94,6 @@ Global
{4757C7D9-6AE9-477D-9829-55D9906AC3E6} = {AD93DD04-989C-40BE-A3F4-25DABF290423}
{D6629DD3-BA0F-44B5-A97F-3B992ECAB85D} = {630FB448-8C5C-438F-930D-B0209407DE6A}
{1DA1835B-9EA4-4095-A8CF-10E2778206D3} = {D6629DD3-BA0F-44B5-A97F-3B992ECAB85D}
{1CC3B44E-213A-4853-8128-9935F2A4C5D4} = {AD93DD04-989C-40BE-A3F4-25DABF290423}
{1D548FA0-2A8F-455F-8814-F152751FB738} = {AD93DD04-989C-40BE-A3F4-25DABF290423}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {B327C65A-BD15-480D-825E-9D5A870C521A}

2
aspnet-core/common.props

@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Version>3.3.0</Version>
<Version>4.0.0</Version>
<Authors>LINGYUN</Authors>
<NoWarn>$(NoWarn);CS1591;CS0436</NoWarn>
<PackageProjectUrl>https://github.com/colinin/abp-vue-admin-element-typescript/</PackageProjectUrl>

2
aspnet-core/configuration/account/AuthServer.Host/appsettings.Development.json

@ -62,7 +62,7 @@
},
"AuthServer": {
"Authority": "http://localhost:44385/",
"ApiName": "auth-service"
"ApiName": "lingyun-abp-application"
},
"WeChat": {
"Auth": {

2
aspnet-core/configuration/admin/LINGYUN.Abp.BackendAdmin.HttpApi.Host/appsettings.Development.json

@ -88,7 +88,7 @@
},
"AuthServer": {
"Authority": "http://localhost:44385/",
"ApiName": "auth-service"
"ApiName": "lingyun-abp-application"
},
"Serilog": {
"MinimumLevel": {

19
aspnet-core/configuration/apigateway/LINGYUN.ApiGateway.Host/appsettings.Development.json

@ -9,20 +9,18 @@
},
"RemoteServices": {
"ApiGateway": {
"BaseUrl": "http://localhost:30001/",//Ocelot Api,Volo.Abp.HttpClient
"IdentityClient": "apigateway-host-client"
"BaseUrl": "http://localhost:30001/",
"IdentityClient": "ApigatewayHostClient"
}
},
"IdentityClients": {//OcelotAPI,Volo.Abp.HttpClient.IdentityModel
"apigateway-host-client": {
"IdentityClients": {
"ApigatewayHostClient": {
"Authority": "http://localhost:44385",
"RequireHttps": false,
"GrantType": "client_credentials",
"ClientId": "apigateway-host-client",
"Scope": "apigateway-service",
"ClientId": "ApigatewayHostClient",
"ClientSecret": "1q2w3e*",
"UserName": "ocelotHost",
"UserPassword": "Ocelot1."
"Scope": "lingyun-abp-application"
}
},
"EnabledDynamicOcelot": true,
@ -43,9 +41,8 @@
}
},
"AuthServer": {
"Authority": "http://localhost:44385/",//IdentityServer
"ApiName": "apigateway-service",//IdentityServerApiName
"ApiSecret": "defj98734htgrb90365D23"//IdentityServerApiSecret
"Authority": "http://localhost:44385/",
"ApiName": "lingyun-abp-application"
},
"Serilog": {
"MinimumLevel": {

3
aspnet-core/configuration/apigateway/LINGYUN.ApiGateway.HttpApi.Host/appsettings.Development.json

@ -39,8 +39,7 @@
},
"AuthServer": {
"Authority": "http://localhost:44385/",
"ApiName": "apigateway-service",
"ApiSecret": "defj98734htgrb90365D23"
"ApiName": "lingyun-abp-application"
},
"Serilog": {
"MinimumLevel": {

2
aspnet-core/configuration/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/appsettings.Development.json

@ -74,7 +74,7 @@
},
"AuthServer": {
"Authority": "http://localhost:44385/",
"ApiName": "auth-service"
"ApiName": "lingyun-abp-application"
},
"Serilog": {
"MinimumLevel": {

2
aspnet-core/configuration/messages/LINGYUN.Abp.MessageService.HttpApi.Host/appsettings.Development.json

@ -22,7 +22,7 @@
},
"AuthServer": {
"Authority": "http://localhost:44385/",
"ApiName": "auth-service"
"ApiName": "lingyun-abp-application"
},
"Hangfire": {
"MySql": {

18
aspnet-core/configuration/platform/LINGYUN.Platform.HttpApi.Host/appsettings.Development.json

@ -31,6 +31,22 @@
"VirtualHost": "Name of your RabbitMQ server VirtualHost"
}
},
"RemoteServices": {
"AbpIdentity": {
"BaseUrl": "http://localhost:30015/",
"IdentityClient": "internal-service-client"
}
},
"IdentityClients": {
"internal-service-client": {
"Authority": "http://localhost:44385",
"RequireHttps": false,
"GrantType": "client_credentials",
"Scope": "lingyun-abp-application",
"ClientId": "internal-service-client",
"ClientSecret": "1q2w3e*"
}
},
"Redis": {
"Configuration": "127.0.0.1",
"InstanceName": "LINGYUN.AbpApplication",
@ -38,7 +54,7 @@
},
"AuthServer": {
"Authority": "http://localhost:44385/",
"ApiName": "auth-service"
"ApiName": "lingyun-abp-application"
},
"Serilog": {
"MinimumLevel": {

2
aspnet-core/modules/account/LINGYUN.Abp.Account.Application.Contracts/LINGYUN.Abp.Account.Application.Contracts.csproj

@ -18,7 +18,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Account.Application.Contracts" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Account.Application.Contracts" Version="4.0.0" />
</ItemGroup>
</Project>

4
aspnet-core/modules/account/LINGYUN.Abp.Account.Application/LINGYUN.Abp.Account.Application.csproj

@ -8,8 +8,8 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Account.Application" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Sms" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Account.Application" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Sms" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

4
aspnet-core/modules/account/LINGYUN.Abp.Account.HttpApi/LINGYUN.Abp.Account.HttpApi.csproj

@ -3,12 +3,12 @@
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Account.HttpApi" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Account.HttpApi" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

26
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN.ApiGateWay.Admin.Domain.Shared.csproj

@ -1,26 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Localization" Version="2.9.0" />
</ItemGroup>
<ItemGroup>
<None Remove="LINGYUN\ApiGateWay\Admin\Localization\DomainShared\en.json" />
<None Remove="LINGYUN\ApiGateWay\Admin\Localization\DomainShared\zh-Hans.json" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="LINGYUN\ApiGateWay\Admin\Localization\DomainShared\en.json" />
<EmbeddedResource Include="LINGYUN\ApiGateWay\Admin\Localization\DomainShared\zh-Hans.json" />
</ItemGroup>
<ItemGroup>
<Folder Include="LINGYUN\ApiGateWay\Admin\Routes\" />
</ItemGroup>
</Project>

32
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/ApiGateWayAdminDomainSharedModule.cs

@ -1,32 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Localization;
using Volo.Abp.Localization;
using Volo.Abp.Localization.ExceptionHandling;
using Volo.Abp.Modularity;
using Volo.Abp.VirtualFileSystem;
namespace LINGYUN.ApiGateWay.Admin
{
[DependsOn(typeof(AbpLocalizationModule))]
public class ApiGateWayAdminDomainSharedModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
Configure<AbpVirtualFileSystemOptions>(options =>
{
options.FileSets.AddEmbedded<ApiGateWayAdminDomainSharedModule>();
});
Configure<AbpLocalizationOptions>(options =>
{
options.Resources
.Add<ApiGateWayAdminResource>("zh-Hans")
.AddVirtualJson("/LINGYUN/ApiGateWay/Admin/Localization/Resources");
});
Configure<AbpExceptionLocalizationOptions>(options =>
{
options.MapCodeNamespace("ApiGateWayAdmin", typeof(ApiGateWayAdminResource));
});
}
}
}

8
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/HostAndPortConsts.cs

@ -1,8 +0,0 @@
namespace LINGYUN.ApiGateWay.Admin
{
public class HostAndPortConsts
{
// 计算机名最大长度
public const int MaxHostLength = 255;
}
}

7
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Http/HttpDelegatingHandlerConsts.cs

@ -1,7 +0,0 @@
namespace LINGYUN.ApiGateWay.Admin.Http
{
public class HttpDelegatingHandlerConsts
{
public const int MaxNameLength = 256;
}
}

10
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Localization/ApiGateWayAdminResource.cs

@ -1,10 +0,0 @@
using Volo.Abp.Localization;
namespace LINGYUN.ApiGateWay.Admin.Localization
{
[LocalizationResourceName("ApiGatewayAdmin")]
public class ApiGateWayAdminResource
{
}
}

5
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Localization/Resources/en.json

@ -1,5 +0,0 @@
{
"culture": "en",
"texts": {
}
}

6
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/Localization/Resources/zh-Hans.json

@ -1,6 +0,0 @@
{
"culture": "zh-Hans",
"texts": {
}
}

13
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain.Shared/LINGYUN/ApiGateWay/Admin/RouteGroupAppKey.cs

@ -1,13 +0,0 @@
namespace LINGYUN.ApiGateWay.Admin
{
public class RouteGroupAppKey
{
public string AppId { get; }
public string AppName { get; }
public RouteGroupAppKey(string appId, string appName)
{
AppId = appId;
AppName = appName;
}
}
}

17
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN.ApiGateWay.Admin.Domain.csproj

@ -1,17 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Caching" Version="2.9.0" />
<PackageReference Include="Volo.Abp.Ddd.Domain" Version="2.9.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\LINGYUN.ApiGateWay.Admin.Domain.Shared\LINGYUN.ApiGateWay.Admin.Domain.Shared.csproj" />
</ItemGroup>
</Project>

12
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/ApiGateWayAdminDomainModule.cs

@ -1,12 +0,0 @@
using Volo.Abp.Domain;
using Volo.Abp.Modularity;
namespace LINGYUN.ApiGateWay.Admin
{
[DependsOn(
typeof(ApiGateWayAdminDomainSharedModule),
typeof(AbpDddDomainModule))]
public class ApiGateWayAdminDomainModule : AbpModule
{
}
}

12
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Globals/Global.cs

@ -1,12 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
using Volo.Abp.Domain.Entities.Auditing;
namespace LINGYUN.ApiGateWay.Admin.Globals
{
public class Global : FullAuditedAggregateRoot<Guid>
{
}
}

62
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/HostAndPort.cs

@ -1,62 +0,0 @@
using JetBrains.Annotations;
using System;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin
{
public class HostAndPort : Entity<Guid>
{
public virtual string Host { get; protected set; }
public virtual int? Port { get; protected set; }
protected HostAndPort()
{
}
public HostAndPort(Guid id, [NotNull] string host, int? port = null)
{
Id = id;
BindHost(host, port);
}
public void BindHost([NotNull] string host, int? port = null)
{
Check.NotNullOrWhiteSpace(host, nameof(host), HostAndPortConsts.MaxHostLength);
Host = host;
Port = port;
}
public override int GetHashCode()
{
if (!Host.IsNullOrWhiteSpace())
{
if (Port.HasValue)
{
return Host.GetHashCode() & Port.Value;
}
return Host.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Host.IsNullOrWhiteSpace())
{
return false;
}
if (obj is HostAndPort hostAndPort)
{
if (Port.HasValue)
{
return hostAndPort.Host.Equals(Host) &&
Port.Equals(hostAndPort.Port);
}
return hostAndPort.Host.Equals(Host);
}
return false;
}
}
}

13
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/DownstreamHttpMethod.cs

@ -1,13 +0,0 @@
using System;
namespace LINGYUN.ApiGateWay.Admin.Http
{
public class DownstreamHttpMethod : HttpMethod
{
public DownstreamHttpMethod(Guid id, string method)
: base(id, method)
{
}
}
}

45
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpDelegatingHandler.cs

@ -1,45 +0,0 @@
using JetBrains.Annotations;
using System;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Http
{
public class HttpDelegatingHandler : Entity<Guid>
{
public virtual string Name { get; protected set; }
protected HttpDelegatingHandler()
{
}
public HttpDelegatingHandler(Guid id, [NotNull] string name)
{
Id = id;
Name = Check.NotNullOrWhiteSpace(name, nameof(name), HttpDelegatingHandlerConsts.MaxNameLength);
}
public override int GetHashCode()
{
if (!Name.IsNullOrWhiteSpace())
{
return Name.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Name.IsNullOrWhiteSpace())
{
return false;
}
if (obj is HttpDelegatingHandler handler)
{
return Name.Equals(handler.Name, StringComparison.CurrentCultureIgnoreCase);
}
return false;
}
}
}

43
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpHandler.cs

@ -1,43 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Http
{
public class HttpHandler : Entity<Guid>
{
/// <summary>
/// 每台服务器最大连接数
/// </summary>
public virtual int? MaxConnectionsPerServer { get; protected set; }
/// <summary>
/// 允许自动重定向
/// </summary>
public virtual bool AllowAutoRedirect { get; set; }
/// <summary>
/// 使用Cookie容器
/// </summary>
public virtual bool UseCookieContainer { get; set; }
/// <summary>
/// 启用跟踪
/// </summary>
public virtual bool UseTracing { get; set; }
/// <summary>
/// 启用代理
/// </summary>
public virtual bool UseProxy { get; set; }
protected HttpHandler()
{
}
public HttpHandler(Guid id)
{
Id = id;
}
public void ChangeMaxConnection(int? maxConnection = 1000)
{
MaxConnectionsPerServer = maxConnection;
}
}
}

51
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpHeader.cs

@ -1,51 +0,0 @@
using JetBrains.Annotations;
using System;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Http
{
public abstract class HttpHeader : Entity<Guid>
{
public virtual string Key { get; protected set; }
public virtual string Value { get; protected set; }
protected HttpHeader()
{
}
protected HttpHeader(Guid id, [NotNull] string key, [NotNull] string value)
{
Id = id;
Key = Check.NotNullOrWhiteSpace(key, nameof(key));
Value = Check.NotNullOrWhiteSpace(value, nameof(value));
}
public override int GetHashCode()
{
if (!Key.IsNullOrWhiteSpace() &&
!Value.IsNullOrWhiteSpace())
{
return Key.GetHashCode() & Value.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Key.IsNullOrWhiteSpace() ||
Value.IsNullOrWhiteSpace())
{
return false;
}
if (obj is HttpHeader httpHeader)
{
return httpHeader.Key.Equals(Key, StringComparison.CurrentCultureIgnoreCase) &&
httpHeader.Value.Equals(Value, StringComparison.CurrentCultureIgnoreCase);
}
return false;
}
}
}

45
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpMethod.cs

@ -1,45 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Http
{
public abstract class HttpMethod : Entity<Guid>
{
/// <summary>
/// Http调用方法
/// </summary>
public virtual string Method { get; protected set; }
protected HttpMethod()
{
}
protected HttpMethod(Guid id, string method)
{
Id = id;
Method = method;
}
public override int GetHashCode()
{
if (!Method.IsNullOrWhiteSpace())
{
return Method.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Method.IsNullOrWhiteSpace())
{
return false;
}
if (obj is HttpMethod httpMethod)
{
return httpMethod.Method.Equals(Method);
}
return false;
}
}
}

51
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/HttpQuery.cs

@ -1,51 +0,0 @@
using JetBrains.Annotations;
using System;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Http
{
public class HttpQuery : Entity<Guid>
{
public virtual string Key { get; protected set; }
public virtual string Value { get; protected set; }
protected HttpQuery()
{
}
protected HttpQuery(Guid id, [NotNull] string key, [NotNull] string value)
{
Id = id;
Key = Check.NotNullOrWhiteSpace(key, nameof(key));
Value = Check.NotNullOrWhiteSpace(value, nameof(value));
}
public override int GetHashCode()
{
if (!Key.IsNullOrWhiteSpace() &&
!Value.IsNullOrWhiteSpace())
{
return Key.GetHashCode() & Value.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Key.IsNullOrWhiteSpace() ||
Value.IsNullOrWhiteSpace())
{
return false;
}
if (obj is HttpQuery httpQuery)
{
return Key.Equals(httpQuery.Key, StringComparison.CurrentCultureIgnoreCase) &&
Value.Equals(httpQuery.Value, StringComparison.CurrentCultureIgnoreCase);
}
return false;
}
}
}

13
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Http/UpstreamHttpMethod.cs

@ -1,13 +0,0 @@
using System;
namespace LINGYUN.ApiGateWay.Admin.Http
{
public class UpstreamHttpMethod : HttpMethod
{
public UpstreamHttpMethod(Guid id, string method)
: base(id, method)
{
}
}
}

37
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/LoadBalancer.cs

@ -1,37 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin
{
public class LoadBalancer : Entity<Guid>
{
/// <summary>
/// 负载均衡类型
/// </summary>
public virtual string Type { get; private set; }
/// <summary>
/// 用于Cookie会话密钥
/// </summary>
public virtual string Key { get; private set; }
/// <summary>
/// 会话阻断时间
/// </summary>
public virtual int? Expiry { get; private set; }
protected LoadBalancer()
{
}
public LoadBalancer(Guid id, string type, string key, int? expiry = null)
{
Id = id;
ApplyPolicy(type, key, expiry);
}
public void ApplyPolicy(string type, string key, int? expiry = null)
{
Type = type;
Key = key;
Expiry = expiry;
}
}
}

32
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/QoS.cs

@ -1,32 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin
{
public class QoS : Entity<Guid>
{
public virtual int? ExceptionsAllowedBeforeBreaking { get; private set; }
public virtual int? DurationOfBreak { get; private set; }
public virtual int? TimeoutValue { get; private set; }
protected QoS()
{
}
public QoS(Guid id, int? exceptionsAllowdBeforeBreaking = null, int? durationOfBreak = null, int? timeOut = null)
{
Id = id;
ApplyPolicy(exceptionsAllowdBeforeBreaking, durationOfBreak, timeOut);
}
public void ApplyPolicy(int? exceptionsAllowdBeforeBreaking = null, int? durationOfBreak = null, int? timeOut = null)
{
ExceptionsAllowedBeforeBreaking = exceptionsAllowdBeforeBreaking;
DurationOfBreak = durationOfBreak;
TimeoutValue = timeOut;
}
}
}

57
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/RateLimitRule.cs

@ -1,57 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Security;
using System;
using System.Collections.Generic;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin
{
public class RateLimitRule : Entity<Guid>
{
/// <summary>
/// 客户端白名单列表,多个以分号分隔
/// </summary>
public virtual ICollection<RouteClientWhite> ClientWhiteList { get; private set; }
/// <summary>
/// 是否启用流量现值
/// </summary>
public virtual bool EnableRateLimiting { get; private set; }
/// <summary>
/// 限速时段
/// </summary>
public virtual string Period { get; private set; }
/// <summary>
/// 速率极限周期
/// </summary>
public virtual double? PeriodTimespan { get; private set; }
/// <summary>
/// 客户端在定义的时间内可以发出的最大请求数
/// </summary>
public virtual long? Limit { get; private set; }
protected RateLimitRule()
{
ClientWhiteList = new List<RouteClientWhite>();
}
public RateLimitRule(Guid id, string period = "", double? periodTimespan = null,
long? limit = null, bool enabled = true)
{
Id = id;
ChangeRateLimitState(enabled);
ApplyPolicy(period, periodTimespan, limit);
}
public void ChangeRateLimitState(bool enabled = true)
{
EnableRateLimiting = enabled;
}
public void ApplyPolicy(string period = "", double? periodTimespan = null,
long? limit = null)
{
Period = period;
PeriodTimespan = periodTimespan;
Limit = limit;
}
}
}

348
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/Route.cs

@ -1,348 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Security;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.Guids;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class Route : FullAuditedAggregateRoot<Guid>
{
/// <summary>
/// 应用标识
/// </summary>
public virtual string AppId { get; protected set; }
/// <summary>
/// 路由名称
/// </summary>
public virtual string Name { get; protected set; }
/// <summary>
/// 请求标识
/// </summary>
public virtual string RequestIdKey { get; set; }
/// <summary>
/// 是否区分大小写
/// </summary>
public virtual bool RouteIsCaseSensitive { get; set; }
/// <summary>
/// 服务名称
/// </summary>
public virtual string ServiceName { get; protected set; }
/// <summary>
/// 服务命名空间
/// </summary>
public virtual string ServiceNamespace { get; protected set; }
/// <summary>
/// 下游协议
/// </summary>
public virtual string DownstreamScheme { get; set; }
/// <summary>
/// 下游路由路径
/// </summary>
public virtual string DownstreamPathTemplate { get; protected set; }
/// <summary>
/// 上游路由路径
/// </summary>
public virtual string UpstreamPathTemplate { get; protected set; }
/// <summary>
/// 变更下游路径
/// </summary>
public virtual string ChangeDownstreamPathTemplate { get; protected set; }
/// <summary>
/// 上游主机
/// </summary>
public virtual string UpstreamHost { get; set; }
/// <summary>
/// 聚合标识
/// </summary>
public virtual string Key { get; set; }
/// <summary>
/// 优先级
/// </summary>
public virtual int? Priority { get; set; }
/// <summary>
/// 超时时间
/// </summary>
public virtual int? Timeout { get; set; }
/// <summary>
/// 忽略SSL警告
/// </summary>
public virtual bool DangerousAcceptAnyServerCertificateValidator { get; set; }
/// <summary>
/// 下游版本号
/// </summary>
public virtual string DownstreamHttpVersion { get; set; }
/// <summary>
/// 下游Http方法列表
/// </summary>
public virtual ICollection<RouteUpstreamHttpMethod> UpstreamHttpMethods { get; protected set; }
/// <summary>
/// 上游Http方法列表
/// </summary>
public virtual ICollection<RouteDownstreamHttpMethod> DownstreamHttpMethods { get; protected set; }
/// <summary>
/// 添加请求头参数
/// </summary>
public virtual ICollection<RouteAddRequestHttpHeader> AddHeadersToRequest { get; protected set; }
/// <summary>
/// 下游请求头转换
/// </summary>
public virtual ICollection<RouteUpstreamTransformHttpHeader> UpstreamHeaderTransform { get; protected set; }
/// <summary>
/// 上游请求头转换
/// </summary>
public virtual ICollection<RouteDownstreamTransformHttpHeader> DownstreamHeaderTransform { get; protected set; }
/// <summary>
/// 请求声明转换
/// </summary>
public virtual ICollection<RouteAddToRequestClaim> AddClaimsToRequest { get; protected set; }
/// <summary>
/// 请求必须的声明
/// </summary>
public virtual ICollection<RouteRequirementClaim> RouteClaimsRequirement { get; protected set; }
/// <summary>
/// 用户声明到请求头转换
/// </summary>
public virtual ICollection<RouteAddToRequestHttpQuery> AddQueriesToRequest { get; protected set; }
/// <summary>
/// 下游主机列表
/// </summary>
public virtual ICollection<RouteDownstreamHostAndPort> DownstreamHostAndPorts { get; protected set; }
/// <summary>
/// 授权处理器列表
/// </summary>
public virtual ICollection<RouteHttpDelegatingHandler> DelegatingHandlers { get; protected set; }
/// <summary>
/// Http选项
/// </summary>
public virtual RouteHttpHandler HttpHandler { get; protected set; }
/// <summary>
/// 授权
/// </summary>
public virtual RouteAuthentication Authentication { get; protected set; }
/// <summary>
/// 速率限制
/// </summary>
public virtual RouteRateLimitRule RouteRateLimitRule { get; protected set; }
/// <summary>
/// 负债均衡
/// </summary>
public virtual RouteLoadBalancer LoadBalancer { get; protected set; }
/// <summary>
/// 服务质量
/// </summary>
public virtual RouteQos QoS { get; protected set; }
/// <summary>
/// 文件缓存
/// </summary>
public virtual RouteCache Cache { get; protected set; }
/// <summary>
/// 安全策略
/// </summary>
public virtual RouteSecurity Security { get; protected set; }
protected Route()
{
UpstreamHttpMethods = new Collection<RouteUpstreamHttpMethod>();
DownstreamHttpMethods = new Collection<RouteDownstreamHttpMethod>();
AddHeadersToRequest = new Collection<RouteAddRequestHttpHeader>();
UpstreamHeaderTransform = new Collection<RouteUpstreamTransformHttpHeader>();
DownstreamHeaderTransform = new Collection<RouteDownstreamTransformHttpHeader>();
AddClaimsToRequest = new Collection<RouteAddToRequestClaim>();
RouteClaimsRequirement = new Collection<RouteRequirementClaim>();
AddQueriesToRequest = new Collection<RouteAddToRequestHttpQuery>();
DownstreamHostAndPorts = new Collection<RouteDownstreamHostAndPort>();
DelegatingHandlers = new Collection<RouteHttpDelegatingHandler>();
}
public void AddDownstreamHttpMethod(IGuidGenerator generator, string method)
{
DownstreamHttpMethods.AddIfNotContains(new RouteDownstreamHttpMethod(Id, generator.Create(), method)); ;
}
public void RemoveDownstreamHttpMethod(string method)
{
DownstreamHttpMethods.RemoveAll(x => x.Method.Equals(method, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllDownstreamHttpMethod()
{
DownstreamHttpMethods.Clear();
}
public void AddUpstreamHttpMethod(IGuidGenerator generator, string method)
{
UpstreamHttpMethods.AddIfNotContains(new RouteUpstreamHttpMethod(Id, generator.Create(), method));
}
public void RemoveUpstreamHttpMethod(string method)
{
UpstreamHttpMethods.RemoveAll(x => x.Method.Equals(method, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllUpstreamHttpMethod()
{
UpstreamHttpMethods.Clear();
}
public void AddRequestHeader(IGuidGenerator generator, string key, string value)
{
AddHeadersToRequest.AddIfNotContains(new RouteAddRequestHttpHeader(Id, generator.Create(), key, value));
}
public void RemoveRequestHeader(string key, string value)
{
AddHeadersToRequest.RemoveAll(x => x.Key.Equals(key, StringComparison.CurrentCultureIgnoreCase)
&& x.Value.Equals(value, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllRequestHeader()
{
AddHeadersToRequest.Clear();
}
public void AddUpstreamHeaderTransform(IGuidGenerator generator, string key, string value)
{
UpstreamHeaderTransform.AddIfNotContains(new RouteUpstreamTransformHttpHeader(Id, generator.Create(), key, value));
}
public void RemoveUpstreamHeaderTransform(string key, string value)
{
UpstreamHeaderTransform.RemoveAll(x => x.Key.Equals(key, StringComparison.CurrentCultureIgnoreCase)
&& x.Value.Equals(value, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllUpstreamHeaderTransform()
{
UpstreamHeaderTransform.Clear();
}
public void AddDownstreamHeaderTransform(IGuidGenerator generator, string key, string value)
{
DownstreamHeaderTransform.AddIfNotContains(new RouteDownstreamTransformHttpHeader(Id, generator.Create(), key, value));
}
public void RemoveDownstreamHeaderTransform(string key, string value)
{
DownstreamHeaderTransform.RemoveAll(x => x.Key.Equals(key, StringComparison.CurrentCultureIgnoreCase)
&& x.Value.Equals(value, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllDownstreamHeaderTransform()
{
DownstreamHeaderTransform.Clear();
}
public void AddRequestClaim(IGuidGenerator generator, string key, string value)
{
AddClaimsToRequest.AddIfNotContains(new RouteAddToRequestClaim(Id, generator.Create(), key, value));
}
public void RemoveRequestClaim(string key, string value)
{
AddClaimsToRequest.RemoveAll(x => x.Key.Equals(key, StringComparison.CurrentCultureIgnoreCase)
&& x.Value.Equals(value, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllRequestClaim()
{
AddClaimsToRequest.Clear();
}
public void AddRequirementClaim(IGuidGenerator generator, string key, string value)
{
RouteClaimsRequirement.AddIfNotContains(new RouteRequirementClaim(Id, generator.Create(), key, value));
}
public void RemoveRequirementClaim(string key, string value)
{
RouteClaimsRequirement.RemoveAll(x => x.Key.Equals(key, StringComparison.CurrentCultureIgnoreCase)
&& x.Value.Equals(value, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllRequirementClaim()
{
RouteClaimsRequirement.Clear();
}
public void AddRequestQuery(IGuidGenerator generator, string key, string value)
{
AddQueriesToRequest.AddIfNotContains(new RouteAddToRequestHttpQuery(Id, generator.Create(), key, value));
}
public void RemoveRequestQuery(string key, string value)
{
AddQueriesToRequest.RemoveAll(x => x.Key.Equals(key, StringComparison.CurrentCultureIgnoreCase)
&& x.Value.Equals(value, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllRequestQuery()
{
AddQueriesToRequest.Clear();
}
public void AddDownstreamHost(IGuidGenerator generator, string host, int? port)
{
DownstreamHostAndPorts.AddIfNotContains(new RouteDownstreamHostAndPort(Id, generator.Create(), host, port));
}
public void RemoveDownstreamHost(string host, int? port)
{
DownstreamHostAndPorts.RemoveAll(x => x.Host.Equals(host, StringComparison.CurrentCultureIgnoreCase)
&& x.Port.Equals(port));
}
public void RemoveAllDownstreamHost()
{
DownstreamHostAndPorts.Clear();
}
public void AddDelegatingHandler(IGuidGenerator generator, string name)
{
DelegatingHandlers.AddIfNotContains(new RouteHttpDelegatingHandler(Id, generator.Create(), name));
}
public void RemoveDelegatingHandler(string name)
{
DelegatingHandlers.RemoveAll(x => x.Name.Equals(name, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllDelegatingHandler()
{
DelegatingHandlers.Clear();
}
public void BindService(string serviceName, string @namespace)
{
ServiceName = serviceName;
ServiceNamespace = @namespace;
}
public void UseHttpHandler(IGuidGenerator generator, bool autoRedirect = false, bool useCookie = false,
bool useTracking = false, bool useProxy = false, int? maxConnection = 1000)
{
if (HttpHandler == null)
{
HttpHandler = new RouteHttpHandler(generator.Create(), Id);
}
HttpHandler.UseProxy = useProxy;
HttpHandler.UseTracing = useTracking;
HttpHandler.UseCookieContainer = useCookie;
HttpHandler.AllowAutoRedirect = autoRedirect;
HttpHandler.ChangeMaxConnection(maxConnection);
}
public void UseAuthentication(IGuidGenerator generator, string provider, IEnumerable<string> allowScope)
{
if (Authentication == null)
{
Authentication = new RouteAuthentication(generator.Create(), Id, provider);
}
Authentication.AddScopes(allowScope);
}
}
}

20
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAddRequestHttpHeader.cs

@ -1,20 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteAddRequestHttpHeader : HttpHeader
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteAddRequestHttpHeader()
{
}
public RouteAddRequestHttpHeader(Guid routeId, Guid httpHeaderId, string key, string value)
: base(httpHeaderId, key, value)
{
RouteId = routeId;
}
}
}

20
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAddToRequestClaim.cs

@ -1,20 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Security;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteAddToRequestClaim : Claim
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteAddToRequestClaim()
{
}
public RouteAddToRequestClaim(Guid routeId, Guid claimId, string key, string value)
: base(claimId, key, value)
{
RouteId = routeId;
}
}
}

20
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAddToRequestHttpQuery.cs

@ -1,20 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteAddToRequestHttpQuery : HttpQuery
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteAddToRequestHttpQuery()
{
}
public RouteAddToRequestHttpQuery(Guid routeId, Guid httpQueryId, string key, string value)
: base(httpQueryId, key, value)
{
RouteId = routeId;
}
}
}

45
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAllowedScope.cs

@ -1,45 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteAllowedScope : Entity<int>
{
public virtual string Scope { get; protected set; }
public virtual Guid AuthenticationId { get; protected set; }
public virtual RouteAuthentication Authentication { get; protected set; }
protected RouteAllowedScope()
{
}
public RouteAllowedScope(Guid authenticationId, string scope)
{
AuthenticationId = authenticationId;
Scope = scope;
}
public override int GetHashCode()
{
if (!Scope.IsNullOrWhiteSpace())
{
return Scope.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Scope.IsNullOrWhiteSpace())
{
return false;
}
if (obj is RouteAllowedScope allowedScope)
{
return allowedScope.Scope.Equals(Scope);
}
return false;
}
}
}

53
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteAuthentication.cs

@ -1,53 +0,0 @@
using System;
using System.Collections.Generic;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteAuthentication : Entity<Guid>
{
public virtual string AuthenticationProviderKey { get; private set; }
public virtual ICollection<RouteAllowedScope> AllowedScopes { get; set; }
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteAuthentication()
{
AllowedScopes = new List<RouteAllowedScope>();
}
public RouteAuthentication(Guid id, Guid routeId, string providerKey)
{
Id = id;
RouteId = routeId;
ChangeProvider(providerKey);
}
public void ChangeProvider(string providerKey)
{
AuthenticationProviderKey = providerKey;
}
public void AddScope(string scope)
{
AllowedScopes.AddIfNotContains(new RouteAllowedScope(Id, scope));
}
public void AddScopes(IEnumerable<string> scope)
{
foreach(var scop in scope)
{
AddScope(scop);
}
}
public void RemoveScope(string scope)
{
AllowedScopes.RemoveAll(x => x.Scope.Equals(scope, StringComparison.CurrentCultureIgnoreCase));
}
public void RemoveAllScope()
{
AllowedScopes.Clear();
}
}
}

22
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteCache.cs

@ -1,22 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteCache : Entity<int>
{
public virtual int? TtlSeconds { get; private set; }
public virtual string Region { get; private set; }
public virtual Guid RouteId { get; private set; }
public virtual Route Route { get; private set; }
protected RouteCache()
{
}
public RouteCache(Guid routeId, string region = "", int? ttlSeconds = null)
{
RouteId = routeId;
Region = region;
TtlSeconds = ttlSeconds;
}
}
}

19
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteDownstreamHostAndPort.cs

@ -1,19 +0,0 @@
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteDownstreamHostAndPort : HostAndPort
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteDownstreamHostAndPort()
{
}
public RouteDownstreamHostAndPort(Guid routeId, Guid hostId, string key, int? port)
: base(hostId, key, port)
{
RouteId = routeId;
}
}
}

21
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteDownstreamHttpMethod.cs

@ -1,21 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteDownstreamHttpMethod : HttpMethod
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteDownstreamHttpMethod()
{
}
public RouteDownstreamHttpMethod(Guid routeId, Guid httpMethodId, string method)
: base(httpMethodId, method)
{
RouteId = routeId;
}
}
}

20
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteDownstreamTransformHttpHeader.cs

@ -1,20 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteDownstreamTransformHttpHeader : HttpHeader
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteDownstreamTransformHttpHeader()
{
}
public RouteDownstreamTransformHttpHeader(Guid routeId, Guid httpHeaderId, string key, string value)
: base(httpHeaderId, key, value)
{
RouteId = routeId;
}
}
}

21
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteHttpDelegatingHandler.cs

@ -1,21 +0,0 @@
using JetBrains.Annotations;
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteHttpDelegatingHandler : HttpDelegatingHandler
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteHttpDelegatingHandler()
{
}
public RouteHttpDelegatingHandler(Guid routeId, Guid httpHandlerId, [NotNull] string name)
: base(httpHandlerId, name)
{
RouteId = routeId;
}
}
}

20
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteHttpHandler.cs

@ -1,20 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteHttpHandler : HttpHandler
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteHttpHandler()
{
}
public RouteHttpHandler(Guid id, Guid routeId)
{
Id = id;
RouteId = routeId;
}
}
}

11
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteHttpMethod.cs

@ -1,11 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteHttpMethod
{
}
}

23
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteLoadBalancer.cs

@ -1,23 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteLoadBalancer : Entity<int>
{
public virtual Guid LoadBalancerId { get; private set; }
public virtual LoadBalancer LoadBalancer { get; private set; }
public virtual Guid RouteId { get; private set; }
public virtual Route Route { get; private set; }
protected RouteLoadBalancer()
{
}
public RouteLoadBalancer(Guid routeId, Guid loadBalancerId)
{
RouteId = routeId;
LoadBalancerId = loadBalancerId;
}
}
}

22
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteQos.cs

@ -1,22 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteQos : Entity<int>
{
public virtual Guid QoSId { get; protected set; }
public virtual QoS QoS { get; protected set; }
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteQos()
{
}
public RouteQos(Guid routeId, Guid qosId)
{
RouteId = routeId;
QoSId = qosId;
}
}
}

23
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteRateLimitRule.cs

@ -1,23 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteRateLimitRule : Entity<int>
{
public virtual Guid RateLimitRuleId { get; protected set; }
public virtual RateLimitRule RateLimitRule { get; protected set; }
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteRateLimitRule()
{
}
public RouteRateLimitRule(Guid routeId, Guid rateLimitRuleId)
{
RouteId = routeId;
RateLimitRuleId = rateLimitRuleId;
}
}
}

20
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteRequirementClaim.cs

@ -1,20 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Security;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteRequirementClaim : Claim
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteRequirementClaim()
{
}
public RouteRequirementClaim(Guid routeId, Guid claimId, string key, string value)
: base(claimId, key, value)
{
RouteId = routeId;
}
}
}

21
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteUpstreamHttpMethod.cs

@ -1,21 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteUpstreamHttpMethod : HttpMethod
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteUpstreamHttpMethod()
{
}
public RouteUpstreamHttpMethod(Guid routeId, Guid httpMethodId, string method)
: base(httpMethodId, method)
{
RouteId = routeId;
}
}
}

20
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Routes/RouteUpstreamTransformHttpHeader.cs

@ -1,20 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Http;
using System;
namespace LINGYUN.ApiGateWay.Admin.Routes
{
public class RouteUpstreamTransformHttpHeader : HttpHeader
{
public virtual Guid RouteId { get; protected set; }
public virtual Route Route { get; protected set; }
protected RouteUpstreamTransformHttpHeader()
{
}
public RouteUpstreamTransformHttpHeader(Guid routeId, Guid httpHeaderId, string key, string value)
: base(httpHeaderId, key, value)
{
RouteId = routeId;
}
}
}

50
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/Claim.cs

@ -1,50 +0,0 @@
using JetBrains.Annotations;
using System;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Security
{
public class Claim : Entity<Guid>
{
public virtual string Key { get; protected set; }
public virtual string Value { get; protected set; }
protected Claim()
{
}
protected Claim(Guid id, [NotNull] string key, [NotNull] string value)
{
Id = id;
Key = Check.NotNullOrWhiteSpace(key, nameof(key));
Value = Check.NotNullOrWhiteSpace(value, nameof(value));
}
public override int GetHashCode()
{
if (!Key.IsNullOrWhiteSpace() &&
!Value.IsNullOrWhiteSpace())
{
return Key.GetHashCode() & Value.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Key.IsNullOrWhiteSpace() ||
Value.IsNullOrWhiteSpace())
{
return false;
}
if (obj is Claim claim)
{
return claim.Key.Equals(Key, StringComparison.CurrentCultureIgnoreCase) &&
claim.Value.Equals(Value, StringComparison.CurrentCultureIgnoreCase);
}
return false;
}
}
}

34
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteClientWhite.cs

@ -1,34 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Security
{
public class RouteClientWhite : Entity<int>
{
public virtual string ClientId { get; private set; }
public virtual Guid RateLimitRuleId { get; private set; }
public virtual RateLimitRule RateLimitRule { get; private set; }
public override int GetHashCode()
{
if (!ClientId.IsNullOrWhiteSpace())
{
return ClientId.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
ClientId.IsNullOrWhiteSpace())
{
return false;
}
if (obj is RouteClientWhite clientWhite)
{
return clientWhite.ClientId.Equals(ClientId);
}
return false;
}
}
}

40
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteIPBlock.cs

@ -1,40 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Security
{
public class RouteIPBlock : Entity<int>
{
public virtual string Address { get; private set; }
public virtual Guid SecurityId { get; private set; }
public virtual RouteSecurity Security { get; private set; }
protected RouteIPBlock() { }
public RouteIPBlock(Guid securityId, string address)
{
SecurityId = securityId;
Address = address;
}
public override int GetHashCode()
{
if (!Address.IsNullOrWhiteSpace())
{
return Address.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj == null ||
Address.IsNullOrWhiteSpace())
{
return false;
}
if (obj is RouteIPBlock iPBlock)
{
return iPBlock.Address.Equals(Address);
}
return false;
}
}
}

41
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteIPWhite.cs

@ -1,41 +0,0 @@
using System;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Security
{
public class RouteIPWhite : Entity<int>
{
public virtual string Address { get; private set; }
public virtual Guid SecurityId { get; private set; }
public virtual RouteSecurity Security { get; private set; }
protected RouteIPWhite() { }
public RouteIPWhite(Guid securityId, string address)
{
SecurityId = securityId;
Address = address;
}
public override int GetHashCode()
{
if (!Address.IsNullOrWhiteSpace())
{
return Address.GetHashCode();
}
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if(obj == null ||
Address.IsNullOrWhiteSpace())
{
return false;
}
if (obj is RouteIPWhite iPWhite)
{
return iPWhite.Address.Equals(Address);
}
return false;
}
}
}

56
aspnet-core/modules/apigateway/LINGYUN.ApiGateWay.Admin.Domain/LINGYUN/ApiGateWay/Admin/Security/RouteSecurity.cs

@ -1,56 +0,0 @@
using LINGYUN.ApiGateWay.Admin.Routes;
using System;
using System.Collections.Generic;
using Volo.Abp.Domain.Entities;
namespace LINGYUN.ApiGateWay.Admin.Security
{
public class RouteSecurity : Entity<Guid>
{
public virtual ICollection<RouteIPWhite> IPAllowedList { get; private set; }
public virtual ICollection<RouteIPBlock> IPBlockedList { get; private set; }
public virtual Guid RouteId { get; private set; }
public virtual Route Route { get; private set; }
protected RouteSecurity()
{
IPAllowedList = new List<RouteIPWhite>();
IPBlockedList = new List<RouteIPBlock>();
}
public RouteSecurity(Guid id, Guid routeId) : this()
{
Id = id;
RouteId = routeId;
}
public void AddIpWhite(string address)
{
IPAllowedList.AddIfNotContains(new RouteIPWhite(Id, address));
}
public void RemoveIpWhite(string address)
{
IPAllowedList.RemoveAll(ip => ip.Address.Equals(address));
}
public void RemoveAllIpWhite()
{
IPAllowedList.Clear();
}
public void AddIpBlock(string address)
{
IPBlockedList.AddIfNotContains(new RouteIPBlock(Id, address));
}
public void RemoveIpBlock(string address)
{
IPBlockedList.RemoveAll(ip => ip.Address.Equals(address));
}
public void RemoveAllIpBlock()
{
IPBlockedList.Clear();
}
}
}

4
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN.ApiGateway.Application.Contracts.csproj

@ -18,8 +18,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Authorization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Authorization" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

6
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/AggregateReRouteDto.cs

@ -1,5 +1,4 @@
using Newtonsoft.Json;
using System;
using System;
using System.Collections.Generic;
namespace LINGYUN.ApiGateway.Ocelot
@ -9,8 +8,7 @@ namespace LINGYUN.ApiGateway.Ocelot
{
public string AppId { get; set; }
[JsonConverter(typeof(HexLongConverter))]
public long ReRouteId { get; set; }
public string ReRouteId { get; set; }
public string Name { get; set; }

6
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/DynamicReRouteDto.cs

@ -1,12 +1,10 @@
using Newtonsoft.Json;
using System;
using System;
namespace LINGYUN.ApiGateway.Ocelot
{
[Serializable]
public class DynamicReRouteDto : DynamicReRouteDtoBase
{
[JsonConverter(typeof(HexLongConverter))]
public virtual long DynamicReRouteId { get; set; }
public virtual string DynamicReRouteId { get; set; }
}
}

6
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/GlobalConfigurationDto.cs

@ -1,13 +1,11 @@
using Newtonsoft.Json;
using System;
using System;
namespace LINGYUN.ApiGateway.Ocelot
{
[Serializable]
public class GlobalConfigurationDto : GlobalConfigurationDtoBase
{
[JsonConverter(typeof(HexLongConverter))]
public long ItemId { get; set; }
public string ItemId { get; set; }
public string AppId { get; set; }
public GlobalConfigurationDto()

7
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application.Contracts/LINGYUN/ApiGateway/Ocelot/Dto/Result/ReRouteDto.cs

@ -1,5 +1,4 @@
using Newtonsoft.Json;
using System;
using System;
namespace LINGYUN.ApiGateway.Ocelot
{
@ -7,9 +6,7 @@ namespace LINGYUN.ApiGateway.Ocelot
public class ReRouteDto : ReRouteDtoBase
{
public int Id { get; set; }
[JsonConverter(typeof(HexLongConverter))]
public long ReRouteId { get; set; }
public string ReRouteId { get; set; }
public string ConcurrencyStamp { get; set; }
public string ReRouteName { get; set; }
public string AppId { get; set; }

4
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Application/LINGYUN.ApiGateway.Application.csproj

@ -8,8 +8,8 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AutoMapper" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Ddd.Application" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AutoMapper" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Ddd.Application" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

2
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Domain.Shared/LINGYUN.ApiGateway.Domain.Shared.csproj

@ -18,7 +18,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Localization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Localization" Version="4.0.0" />
</ItemGroup>
</Project>

30
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Domain.Shared/Newtonsoft/Json/HexLongConverter.cs

@ -1,30 +0,0 @@
using System;
namespace Newtonsoft.Json
{
public class HexLongConverter : JsonConverter
{
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
long v = value is ulong ? (long)(ulong)value : (long)value;
writer.WriteValue(v.ToString());
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
string value = reader.Value as string;
long lValue = long.Parse(value);
return typeof(ulong) == objectType ? (object)(ulong)lValue : lValue;
}
public override bool CanConvert(Type objectType)
{
switch (objectType.FullName)
{
case "System.Int64":
case "System.UInt64":
return true;
default:
return false;
}
}
}
}

4
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.Domain/LINGYUN.ApiGateway.Domain.csproj

@ -8,8 +8,8 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Caching" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Ddd.Domain" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Caching" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Ddd.Domain" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

6
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.EntityFrameworkCore/LINGYUN.ApiGateway.EntityFrameworkCore.csproj

@ -1,14 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFramework>netstandard2.1</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.EntityFrameworkCore" Version="3.3.0" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

2
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.HttpApi.Client/LINGYUN.ApiGateway.HttpApi.Client.csproj

@ -8,7 +8,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Http.Client" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Http.Client" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

4
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.HttpApi/LINGYUN.ApiGateway.HttpApi.csproj

@ -3,12 +3,12 @@
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

3
aspnet-core/modules/apigateway/LINGYUN.ApiGateway.HttpApi/LINGYUN/ApiGateway/Ocelot/GlobalConfigurationController.cs

@ -4,6 +4,7 @@ using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Authorization.Permissions;
using Volo.Abp.Clients;
namespace LINGYUN.ApiGateway.Ocelot
{
@ -26,6 +27,8 @@ namespace LINGYUN.ApiGateway.Ocelot
[Route("By-AppId/{AppId}")]
public async Task<GlobalConfigurationDto> GetAsync(GlobalGetByAppIdInputDto input)
{
ICurrentClient client = null;
var currentClient = LazyGetRequiredService(ref client);
return await GlobalConfigurationAppService.GetAsync(input);
}

10
aspnet-core/modules/auditing/LINGYUN.Abp.Auditing.Application.Contracts/LINGYUN.Abp.Auditing.Application.Contracts.csproj

@ -13,11 +13,11 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Features" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Authorization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AuditLogging.Domain.Shared" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Identity.Domain.Shared" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Features" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Authorization" Version="4.0.0" />
<PackageReference Include="Volo.Abp.AuditLogging.Domain.Shared" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Identity.Domain.Shared" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="4.0.0" />
</ItemGroup>
</Project>

8
aspnet-core/modules/auditing/LINGYUN.Abp.Auditing.Application/LINGYUN.Abp.Auditing.Application.csproj

@ -8,10 +8,10 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AutoMapper" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AuditLogging.Domain" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Identity.Domain" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Ddd.Application" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AutoMapper" Version="4.0.0" />
<PackageReference Include="Volo.Abp.AuditLogging.Domain" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Identity.Domain" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Ddd.Application" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

4
aspnet-core/modules/auditing/LINGYUN.Abp.Auditing.HttpApi/LINGYUN.Abp.Auditing.HttpApi.csproj

@ -3,12 +3,12 @@
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

6
aspnet-core/modules/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN.Abp.Aliyun.csproj

@ -21,9 +21,9 @@
<ItemGroup>
<PackageReference Include="aliyun-net-sdk-core" Version="1.5.8" />
<PackageReference Include="Volo.Abp.Localization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Json" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Settings" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Localization" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Json" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Settings" Version="4.0.0" />
</ItemGroup>
</Project>

6
aspnet-core/modules/cloud-tencent/LINGYUN.Abp.Tencent/LINGYUN.Abp.Tencent.csproj

@ -19,9 +19,9 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Localization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Json" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Settings" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Localization" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Json" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Settings" Version="4.0.0" />
</ItemGroup>
</Project>

2
aspnet-core/modules/common/LINGYUN.Abp.Aliyun.Authorization/LINGYUN.Abp.Aliyun.Authorization.csproj

@ -8,7 +8,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Core" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Core" Version="4.0.0" />
</ItemGroup>
</Project>

8
aspnet-core/modules/common/LINGYUN.Abp.AspNetCore.SignalR.Protocol.Json/LINGYUN.Abp.AspNetCore.SignalR.Protocol.Json.csproj

@ -1,15 +1,15 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson" Version="3.1.8" />
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="3.3.0" />
<PackageReference Include="Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson" Version="5.0.0" />
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="4.0.0" />
</ItemGroup>
</Project>

4
aspnet-core/modules/common/LINGYUN.Abp.AspNetCore.SignalR/LINGYUN.Abp.AspNetCore.SignalR.JwtToken.csproj

@ -3,12 +3,12 @@
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="4.0.0" />
</ItemGroup>
</Project>

4
aspnet-core/modules/common/LINGYUN.Abp.BackgroundJobs.Hangfire/LINGYUN.Abp.BackgroundJobs.Hangfire.csproj

@ -8,8 +8,8 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.HangFire" Version="3.3.0" />
<PackageReference Include="Volo.Abp.BackgroundJobs" Version="3.3.0" />
<PackageReference Include="Volo.Abp.HangFire" Version="4.0.0" />
<PackageReference Include="Volo.Abp.BackgroundJobs" Version="4.0.0" />
</ItemGroup>
</Project>

2
aspnet-core/modules/common/LINGYUN.Abp.BackgroundJobs/LINGYUN.Abp.BackgroundJobs.csproj

@ -8,7 +8,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.BackgroundJobs" Version="3.3.0" />
<PackageReference Include="Volo.Abp.BackgroundJobs" Version="4.0.0" />
</ItemGroup>
</Project>

2
aspnet-core/modules/common/LINGYUN.Abp.BlobStoring.Aliyun/LINGYUN.Abp.BlobStoring.Aliyun.csproj

@ -10,7 +10,7 @@
<ItemGroup>
<PackageReference Include="Aliyun.OSS.SDK.NetCore" Version="2.10.0" />
<PackageReference Include="Volo.Abp.BlobStoring" Version="3.3.0" />
<PackageReference Include="Volo.Abp.BlobStoring" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

6
aspnet-core/modules/common/LINGYUN.Abp.DistributedLock.Redis/LINGYUN.Abp.DistributedLock.Redis.csproj

@ -9,10 +9,10 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="3.1.8" />
<PackageReference Include="Microsoft.Extensions.Options" Version="3.1.8" />
<PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="5.0.0" />
<PackageReference Include="Microsoft.Extensions.Options" Version="5.0.0" />
<PackageReference Include="Polly" Version="7.2.1" />
<PackageReference Include="Volo.Abp.Core" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Core" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

6
aspnet-core/modules/common/LINGYUN.Abp.EventBus.CAP/LINGYUN.Abp.EventBus.CAP.csproj

@ -11,9 +11,9 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="DotNetCore.CAP" Version="3.0.4" />
<PackageReference Include="Volo.Abp.BackgroundWorkers" Version="3.3.0" />
<PackageReference Include="Volo.Abp.EventBus" Version="3.3.0" />
<PackageReference Include="DotNetCore.CAP" Version="3.1.2" />
<PackageReference Include="Volo.Abp.BackgroundWorkers" Version="4.0.0" />
<PackageReference Include="Volo.Abp.EventBus" Version="4.0.0" />
</ItemGroup>
</Project>

2
aspnet-core/modules/common/LINGYUN.Abp.ExceptionHandling.Emailing/LINGYUN.Abp.ExceptionHandling.Emailing.csproj

@ -22,7 +22,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Emailing" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Emailing" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

2
aspnet-core/modules/common/LINGYUN.Abp.ExceptionHandling.Notifications/LINGYUN.Abp.ExceptionHandling.Notifications.csproj

@ -18,7 +18,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Localization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Localization" Version="4.0.0" />
</ItemGroup>

2
aspnet-core/modules/common/LINGYUN.Abp.ExceptionHandling/LINGYUN.Abp.ExceptionHandling.csproj

@ -8,7 +8,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Localization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Localization" Version="4.0.0" />
</ItemGroup>
</Project>

4
aspnet-core/modules/common/LINGYUN.Abp.Features.LimitValidation.Redis/LINGYUN.Abp.Features.LimitValidation.Redis.csproj

@ -9,9 +9,9 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Options" Version="3.1.8" />
<PackageReference Include="Microsoft.Extensions.Options" Version="5.0.0" />
<PackageReference Include="StackExchange.Redis" Version="2.0.593" />
<PackageReference Include="Volo.Abp.Core" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Core" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

2
aspnet-core/modules/common/LINGYUN.Abp.Features.LimitValidation/LINGYUN.Abp.Features.LimitValidation.csproj

@ -18,7 +18,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Features" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Features" Version="4.0.0" />
</ItemGroup>
</Project>

6
aspnet-core/modules/common/LINGYUN.Abp.Hangfire.MySqlStorage/LINGYUN.Abp.Hangfire.Storage.MySql.csproj

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\..\common.props" />
@ -8,8 +8,8 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Hangfire.MySql.Core" Version="2.2.5" />
<PackageReference Include="Volo.Abp.HangFire" Version="3.3.0" />
<PackageReference Include="Hangfire.MySqlStorage" Version="2.0.3" />
<PackageReference Include="Volo.Abp.HangFire" Version="4.0.0" />
</ItemGroup>
</Project>

8
aspnet-core/modules/common/LINGYUN.Abp.Hangfire.MySqlStorage/LINGYUN/Abp/Hangfire/Storage/MySql/AbpHangfireMySqlStorageModule.cs

@ -1,7 +1,8 @@
using Hangfire;
using Hangfire.MySql.Core;
using Hangfire.MySql;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp;
using Volo.Abp.Hangfire;
using Volo.Abp.Modularity;
@ -34,5 +35,10 @@ namespace LINGYUN.Abp.Hangfire.Storage.MySql
config.UseStorage(_jobStorage);
});
}
public override void OnApplicationShutdown(ApplicationShutdownContext context)
{
_jobStorage?.Dispose();
}
}
}

2
aspnet-core/modules/common/LINGYUN.Abp.Hangfire.Storage.SqlServer/LINGYUN.Abp.Hangfire.Storage.SqlServer.csproj

@ -9,7 +9,7 @@
<ItemGroup>
<PackageReference Include="HangFire.SqlServer" Version="1.7.11" />
<PackageReference Include="Volo.Abp.HangFire" Version="3.3.0" />
<PackageReference Include="Volo.Abp.HangFire" Version="4.0.0" />
</ItemGroup>
</Project>

6
aspnet-core/modules/common/LINGYUN.Abp.IM.SignalR/LINGYUN.Abp.IM.SignalR.csproj

@ -3,13 +3,13 @@
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

4
aspnet-core/modules/common/LINGYUN.Abp.IM/LINGYUN.Abp.IM.csproj

@ -8,8 +8,8 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Auditing" Version="3.3.0" />
<PackageReference Include="Volo.Abp.EventBus" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Auditing" Version="4.0.0" />
<PackageReference Include="Volo.Abp.EventBus" Version="4.0.0" />
</ItemGroup>
</Project>

8
aspnet-core/modules/common/LINGYUN.Abp.Location.Baidu/LINGYUN.Abp.Location.Baidu.csproj

@ -19,10 +19,10 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="3.1.8" />
<PackageReference Include="Volo.Abp.Localization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Json" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Threading" Version="3.3.0" />
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="5.0.0" />
<PackageReference Include="Volo.Abp.Localization" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Json" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Threading" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

8
aspnet-core/modules/common/LINGYUN.Abp.Location.Tencent/LINGYUN.Abp.Location.Tencent.csproj

@ -19,10 +19,10 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="3.1.8" />
<PackageReference Include="Volo.Abp.Localization" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Json" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Threading" Version="3.3.0" />
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="5.0.0" />
<PackageReference Include="Volo.Abp.Localization" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Json" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Threading" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

2
aspnet-core/modules/common/LINGYUN.Abp.Location/LINGYUN.Abp.Location.csproj

@ -9,7 +9,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Core" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Core" Version="4.0.0" />
</ItemGroup>
</Project>

6
aspnet-core/modules/common/LINGYUN.Abp.Notifications.SignalR/LINGYUN.Abp.Notifications.SignalR.csproj

@ -3,13 +3,13 @@
<Import Project="..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Ddd.Application" Version="3.3.0" />
<PackageReference Include="Volo.Abp.AspNetCore.SignalR" Version="4.0.0" />
<PackageReference Include="Volo.Abp.Ddd.Application" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

2
aspnet-core/modules/common/LINGYUN.Abp.Notifications.Sms/LINGYUN.Abp.Notifications.Sms.csproj

@ -8,7 +8,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Sms" Version="3.3.0" />
<PackageReference Include="Volo.Abp.Sms" Version="4.0.0" />
</ItemGroup>
<ItemGroup>

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save