Browse Source

chore: Add the remaining unprocessed nullable types

pull/1544/head
colin 1 month ago
parent
commit
6b02a28f8a
  1. 4
      aspnet-core/LINGYUN.MicroService.All.slnx
  2. 4
      aspnet-core/LINGYUN.MicroService.Aspire.slnx
  3. 12
      aspnet-core/framework/authentication/LINGYUN.Abp.Authentication.QQ/System/Text/Json/JsonElementExtensions.cs
  4. 16
      aspnet-core/framework/authentication/LINGYUN.Abp.Authentication.WeChat/System/Text/Json/JsonElementExtensions.cs
  5. 4
      aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/LINGYUN/Abp/Aliyun/SettingManagement/AliyunSettingAppService.cs
  6. 4
      aspnet-core/framework/dynamic-queryable/LINGYUN.Abp.Dynamic.Queryable.Application/LINGYUN/Abp/Dynamic/Queryable/DynamicQueryableAppService.cs
  7. 2
      aspnet-core/framework/rules/LINGYUN.Abp.Rules.RulesEngine/LINGYUN/Abp/Rules/RulesEngine/WorkflowsResolver.cs
  8. 4
      aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Official.Senparc/LINGYUN/Abp/WeChat/Official/Senparc/WeChatOfficialMessageHandler.cs
  9. 4
      aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Work.AspNetCore/System/Text/Json/JsonElementExtensions.cs
  10. 2
      aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Work/LINGYUN/Abp/WeChat/Work/JsSdk/Models/JsApiTicketInfoResponse.cs
  11. 2
      aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Work/System/WeChatWorkResponseDeserializeExtensions.cs
  12. 2
      aspnet-core/migrations/LY.MicroService.RealtimeMessage.EntityFrameworkCore/RealtimeMessageDbMigrationEventHandler.cs
  13. 6
      aspnet-core/migrations/LY.MicroService.TaskManagement.EntityFrameworkCore/TaskServiceDataSeeder.cs
  14. 2
      aspnet-core/modules/account/LINGYUN.Abp.Account.Application/LINGYUN/Abp/Account/MySecurityLogAppService.cs
  15. 2
      aspnet-core/modules/account/LINGYUN.Abp.Account.Web.IdentityServer/Pages/Account/IdentityServerLoginModel.cs
  16. 2
      aspnet-core/modules/account/LINGYUN.Abp.Account.Web.OpenIddict/ViewModels/Authorize/AuthorizeViewModel.cs
  17. 6
      aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/LinkLogged.cshtml.cs
  18. 4
      aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/Login.cshtml.cs
  19. 2
      aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/SendCode.cshtml
  20. 2
      aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/VerifyAuthenticatorCode.cshtml
  21. 2
      aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/VerifyCode.cshtml
  22. 2
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application.Contracts/LINGYUN/Abp/CachingManagement/CacheKeysDto.cs
  23. 2
      aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application/LINGYUN/Abp/CachingManagement/CacheAppService.cs
  24. 4
      aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/EntityTypeInfoAppService.cs
  25. 2
      aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/OrganizationUnitEntityRuleAppService.cs
  26. 2
      aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/RoleEntityRuleAppService.cs
  27. 2
      aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/SubjectStrategyAppService.cs
  28. 8
      aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.MySql/LINGYUN/Abp/Elsa/EntityFrameworkCore/MySql/AbpElsaEntityFrameworkCoreMySqlModule.cs
  29. 8
      aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.PostgreSql/LINGYUN/Abp/Elsa/EntityFrameworkCore/PostgreSql/AbpElsaEntityFrameworkCorePostgreSqlModule.cs
  30. 2
      aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.PostgreSql/LINGYUN/Abp/Elsa/EntityFrameworkCore/PostgreSql/Migrations/PostgreSqlElsaDataBaseInstaller.cs
  31. 8
      aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.SqlServer/LINGYUN/Abp/Elsa/EntityFrameworkCore/SqlServer/AbpElsaEntityFrameworkCoreSqlServerModule.cs
  32. 12
      aspnet-core/modules/identity/LINGYUN.Abp.Identity.OrganizaztionUnits/LINGYUN/Abp/Identity/OrganizaztionUnits/OrganizaztionUnitDynamicClaimsPrincipalContributorCache.cs
  33. 2
      aspnet-core/modules/identity/LINGYUN.Abp.Identity.Session/LINGYUN/Abp/Identity/Session/IdentitySessionCacheItem.cs
  34. 8
      aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Application/LINGYUN/Abp/OpenIddict/Applications/OpenIddictApplicationAppService.cs
  35. 2
      aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Application/LINGYUN/Abp/OpenIddict/Authorizations/OpenIddictAuthorizationAppService.cs
  36. 4
      aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Sms/LINGYUN/Abp/OpenIddict/Sms/SmsTokenExtensionGrant.cs
  37. 2
      aspnet-core/modules/platform/LINGYUN.Abp.UI.Navigation.VueVbenAdmin5/LINGYUN/Abp/UI/Navigation/VueVbenAdmin5/VueVbenAdmin5StandardMenuConverter.cs
  38. 2
      aspnet-core/modules/realtime-message/LINGYUN.Abp.MessageService.Application/LINGYUN/Abp/MessageService/Chat/MyFriendAppService.cs
  39. 2
      aspnet-core/modules/realtime-notifications/LINGYUN.Abp.ExceptionHandling.Notifications/LINGYUN/Abp/ExceptionHandling/Notifications/AbpNotificationsExceptionSubscriber.cs
  40. 2
      aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Application/LINGYUN/Abp/Notifications/Definitions/Groups/NotificationGroupDefinitionAppService.cs
  41. 2
      aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Application/LINGYUN/Abp/Notifications/Definitions/Notifications/NotificationDefinitionAppService.cs
  42. 8
      aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Domain/LINGYUN/Abp/Notifications/DynamicNotificationDefinitionInMemoryCache.cs
  43. 2
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/ActionRecord.cs
  44. 4
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/IRuleRecordRepository.cs
  45. 2
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/IWorkflowRecordRepository.cs
  46. 4
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/ParamRecord.cs
  47. 20
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/RuleRecord.cs
  48. 2
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/RulesEngineManagementDbPropertites.cs
  49. 12
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/WorkflowRecord.cs
  50. 10
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/WorkflowStore.cs
  51. 4
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore/LINGYUN/Abp/RulesEngineManagement/EntityFrameworkCore/EfCoreRuleRecordRepository.cs
  52. 2
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore/LINGYUN/Abp/RulesEngineManagement/EntityFrameworkCore/EfCoreWorkflowRecordRepository.cs
  53. 246
      aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore/LINGYUN/Abp/RulesEngineManagement/EntityFrameworkCore/RulesEngineManagementDbContextModelCreatingExtensions.cs
  54. 4
      aspnet-core/modules/settings/LINGYUN.Abp.SettingManagement.Application/LINGYUN/Abp/SettingManagement/SettingDefinitionEqualityComparer.cs
  55. 4
      aspnet-core/modules/task-management/LINGYUN.Abp.Elasticsearch.Jobs/LINGYUN/Abp/Elasticsearch/Jobs/ExpiredIndicesCleanupJob.cs
  56. 6
      aspnet-core/modules/task-management/LINGYUN.Abp.TaskManagement.Application.Contracts/LINGYUN/Abp/TaskManagement/BackgroundJobDefinitionDto.cs
  57. 2
      aspnet-core/modules/task-management/LINGYUN.Abp.TaskManagement.Application.Contracts/LINGYUN/Abp/TaskManagement/BackgroundJobInfoDto.cs
  58. 6
      aspnet-core/modules/webhooks/LINGYUN.Abp.Webhooks.ClientProxies/LINGYUN/Abp/Webhooks/ClientProxies/ClientProxiesWebhookPublisher.cs
  59. 8
      aspnet-core/modules/webhooks/LINGYUN.Abp.WebhooksManagement.Domain/LINGYUN/Abp/WebhooksManagement/WebhookDefinitionSerializer.cs
  60. 2
      aspnet-core/services/LY.MicroService.Applications.Single/GlobalUsings.cs
  61. 1
      aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/LY.MicroService.RealtimeMessage.HttpApi.Host.csproj
  62. 2
      aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/RealtimeMessageHttpApiHostModule.cs
  63. 1
      aspnet-core/services/LY.MicroService.TaskManagement.HttpApi.Host/LY.MicroService.TaskManagement.HttpApi.Host.csproj
  64. 2
      aspnet-core/services/LY.MicroService.TaskManagement.HttpApi.Host/TaskManagementHttpApiHostModule.cs
  65. 1
      aspnet-core/services/LY.MicroService.WebhooksManagement.HttpApi.Host/LY.MicroService.WebhooksManagement.HttpApi.Host.csproj
  66. 2
      aspnet-core/services/LY.MicroService.WebhooksManagement.HttpApi.Host/WebhooksManagementHttpApiHostModule.cs
  67. 1
      aspnet-core/services/LY.MicroService.WorkflowManagement.HttpApi.Host/LY.MicroService.WorkflowManagement.HttpApi.Host.csproj
  68. 2
      aspnet-core/services/LY.MicroService.WorkflowManagement.HttpApi.Host/WorkflowManagementHttpApiHostModule.cs

4
aspnet-core/LINGYUN.MicroService.All.slnx

@ -99,10 +99,6 @@
<Project Path="framework/auditing/LINGYUN.Abp.AuditLogging.IP.Location/LINGYUN.Abp.AuditLogging.IP.Location.csproj" /> <Project Path="framework/auditing/LINGYUN.Abp.AuditLogging.IP.Location/LINGYUN.Abp.AuditLogging.IP.Location.csproj" />
<Project Path="framework/auditing/LINGYUN.Abp.AuditLogging/LINGYUN.Abp.AuditLogging.csproj" /> <Project Path="framework/auditing/LINGYUN.Abp.AuditLogging/LINGYUN.Abp.AuditLogging.csproj" />
</Folder> </Folder>
<Folder Name="/framework/authentication/">
<Project Path="framework/authentication/LINGYUN.Abp.Authentication.QQ/LINGYUN.Abp.Authentication.QQ.csproj" />
<Project Path="framework/authentication/LINGYUN.Abp.Authentication.WeChat/LINGYUN.Abp.Authentication.WeChat.csproj" />
</Folder>
<Folder Name="/framework/authorization/"> <Folder Name="/framework/authorization/">
<Project Path="framework/authorization/LINGYUN.Abp.Authorization.OrganizationUnits/LINGYUN.Abp.Authorization.OrganizationUnits.csproj" /> <Project Path="framework/authorization/LINGYUN.Abp.Authorization.OrganizationUnits/LINGYUN.Abp.Authorization.OrganizationUnits.csproj" />
</Folder> </Folder>

4
aspnet-core/LINGYUN.MicroService.Aspire.slnx

@ -84,10 +84,6 @@
<Project Path="framework/auditing/LINGYUN.Abp.AuditLogging.IP.Location/LINGYUN.Abp.AuditLogging.IP.Location.csproj" /> <Project Path="framework/auditing/LINGYUN.Abp.AuditLogging.IP.Location/LINGYUN.Abp.AuditLogging.IP.Location.csproj" />
<Project Path="framework/auditing/LINGYUN.Abp.AuditLogging/LINGYUN.Abp.AuditLogging.csproj" /> <Project Path="framework/auditing/LINGYUN.Abp.AuditLogging/LINGYUN.Abp.AuditLogging.csproj" />
</Folder> </Folder>
<Folder Name="/framework/authentication/">
<Project Path="framework/authentication/LINGYUN.Abp.Authentication.QQ/LINGYUN.Abp.Authentication.QQ.csproj" />
<Project Path="framework/authentication/LINGYUN.Abp.Authentication.WeChat/LINGYUN.Abp.Authentication.WeChat.csproj" />
</Folder>
<Folder Name="/framework/authorization/"> <Folder Name="/framework/authorization/">
<Project Path="framework/authorization/LINGYUN.Abp.Authorization.OrganizationUnits/LINGYUN.Abp.Authorization.OrganizationUnits.csproj" /> <Project Path="framework/authorization/LINGYUN.Abp.Authorization.OrganizationUnits/LINGYUN.Abp.Authorization.OrganizationUnits.csproj" />
</Folder> </Folder>

12
aspnet-core/framework/authentication/LINGYUN.Abp.Authentication.QQ/System/Text/Json/JsonElementExtensions.cs

@ -13,11 +13,11 @@ internal static class JsonElementExtensions
{ {
var result = new List<string>(); var result = new List<string>();
if (json.TryGetProperty(key, out JsonElement property) && property.ValueKind == JsonValueKind.Array) if (json.TryGetProperty(key, out var property) && property.ValueKind == JsonValueKind.Array)
{ {
foreach (var jsonProp in property.EnumerateArray()) foreach (var jsonProp in property.EnumerateArray())
{ {
result.Add(jsonProp.GetString()); result.Add(jsonProp.GetString()!);
} }
} }
@ -26,18 +26,18 @@ internal static class JsonElementExtensions
public static string GetRootString(this JsonDocument json, string key, string defaultValue = "") public static string GetRootString(this JsonDocument json, string key, string defaultValue = "")
{ {
if (json.RootElement.TryGetProperty(key, out JsonElement property)) if (json.RootElement.TryGetProperty(key, out var property))
{ {
return property.GetString(); return property.GetString()!;
} }
return defaultValue; return defaultValue;
} }
public static string GetString(this JsonElement json, string key, string defaultValue = "") public static string GetString(this JsonElement json, string key, string defaultValue = "")
{ {
if (json.TryGetProperty(key, out JsonElement property)) if (json.TryGetProperty(key, out var property))
{ {
return property.GetString(); return property.GetString()!;
} }
return defaultValue; return defaultValue;
} }

16
aspnet-core/framework/authentication/LINGYUN.Abp.Authentication.WeChat/System/Text/Json/JsonElementExtensions.cs

@ -13,11 +13,11 @@ namespace System.Text.Json
{ {
var result = new List<string>(); var result = new List<string>();
if (json.TryGetProperty(key, out JsonElement property) && property.ValueKind == JsonValueKind.Array) if (json.TryGetProperty(key, out var property) && property.ValueKind == JsonValueKind.Array)
{ {
foreach (var jsonProp in property.EnumerateArray()) foreach (var jsonProp in property.EnumerateArray())
{ {
result.Add(jsonProp.GetString()); result.Add(jsonProp.GetString()!);
} }
} }
@ -26,25 +26,25 @@ namespace System.Text.Json
public static string GetRootString(this JsonDocument json, string key, string defaultValue = "") public static string GetRootString(this JsonDocument json, string key, string defaultValue = "")
{ {
if (json.RootElement.TryGetProperty(key, out JsonElement property)) if (json.RootElement.TryGetProperty(key, out var property))
{ {
return property.GetString(); return property.GetString() ?? defaultValue;
} }
return defaultValue; return defaultValue;
} }
public static string GetString(this JsonElement json, string key, string defaultValue = "") public static string GetString(this JsonElement json, string key, string defaultValue = "")
{ {
if (json.TryGetProperty(key, out JsonElement property)) if (json.TryGetProperty(key, out var property))
{ {
return property.GetString(); return property.GetString() ?? defaultValue;
} }
return defaultValue; return defaultValue;
} }
public static int GetRootInt32(this JsonDocument json, string key, int defaultValue = 0) public static int GetRootInt32(this JsonDocument json, string key, int defaultValue = 0)
{ {
if (json.RootElement.TryGetProperty(key, out JsonElement property) && property.TryGetInt32(out int value)) if (json.RootElement.TryGetProperty(key, out var property) && property.TryGetInt32(out var value))
{ {
return value; return value;
} }
@ -53,7 +53,7 @@ namespace System.Text.Json
public static int GetInt32(this JsonElement json, string key, int defaultValue = 0) public static int GetInt32(this JsonElement json, string key, int defaultValue = 0)
{ {
if (json.TryGetProperty(key, out JsonElement property) && property.TryGetInt32(out int value)) if (json.TryGetProperty(key, out var property) && property.TryGetInt32(out var value))
{ {
return value; return value;
} }

4
aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/LINGYUN/Abp/Aliyun/SettingManagement/AliyunSettingAppService.cs

@ -40,7 +40,7 @@ public class AliyunSettingAppService : ApplicationService, IAliyunSettingAppServ
return await GetAllForProviderAsync(GlobalSettingValueProvider.ProviderName, null); return await GetAllForProviderAsync(GlobalSettingValueProvider.ProviderName, null);
} }
protected async virtual Task<SettingGroupResult> GetAllForProviderAsync(string providerName, string providerKey) protected async virtual Task<SettingGroupResult> GetAllForProviderAsync(string providerName, string? providerKey = null)
{ {
var settingGroups = new SettingGroupResult(); var settingGroups = new SettingGroupResult();
@ -59,7 +59,7 @@ public class AliyunSettingAppService : ApplicationService, IAliyunSettingAppServ
await SettingManager.GetOrNullAsync(AliyunSettingNames.Authorization.RegionId, providerName, providerKey), await SettingManager.GetOrNullAsync(AliyunSettingNames.Authorization.RegionId, providerName, providerKey),
ValueType.Option, ValueType.Option,
providerName) providerName)
.AddOptions(GetAvailableRegionOptions()); ?.AddOptions(GetAvailableRegionOptions());
ramSetting.AddDetail( ramSetting.AddDetail(
await SettingDefinitionManager.GetAsync(AliyunSettingNames.Authorization.AccessKeyId), await SettingDefinitionManager.GetAsync(AliyunSettingNames.Authorization.AccessKeyId),
StringLocalizerFactory, StringLocalizerFactory,

4
aspnet-core/framework/dynamic-queryable/LINGYUN.Abp.Dynamic.Queryable.Application/LINGYUN/Abp/Dynamic/Queryable/DynamicQueryableAppService.cs

@ -42,7 +42,7 @@ public abstract class DynamicQueryableAppService<TEntity, TEntityDto> : Applicat
var dynamicParamter = new DynamicParamterDto var dynamicParamter = new DynamicParamterDto
{ {
Name = propertyInfo.Name, Name = propertyInfo.Name,
Type = propertyInfo.PropertyType.FullName, Type = propertyInfo.PropertyType.FullName!,
Description = localizedProp.Value ?? propertyInfo.Name, Description = localizedProp.Value ?? propertyInfo.Name,
JavaScriptType = propertyTypeMap.JavaScriptType, JavaScriptType = propertyTypeMap.JavaScriptType,
AvailableComparator = propertyTypeMap.AvailableComparator AvailableComparator = propertyTypeMap.AvailableComparator
@ -120,7 +120,7 @@ public abstract class DynamicQueryableAppService<TEntity, TEntityDto> : Applicat
if (propertyType.IsNullableType()) if (propertyType.IsNullableType())
{ {
isNullableType = true; isNullableType = true;
propertyType = propertyType.GetGenericArguments().FirstOrDefault(); propertyType = propertyType.GetGenericArguments().First();
} }
if (typeof(Enum).IsAssignableFrom(propertyType)) if (typeof(Enum).IsAssignableFrom(propertyType))

2
aspnet-core/framework/rules/LINGYUN.Abp.Rules.RulesEngine/LINGYUN/Abp/Rules/RulesEngine/WorkflowsResolver.cs

@ -43,7 +43,7 @@ public class WorkflowsResolver : IWorkflowsResolver, ITransientDependency
if (context.HasResolved()) if (context.HasResolved())
{ {
result.Workflows.AddRange(context.Workflows); result.Workflows.AddRange(context.Workflows!);
if (!_options.MergingWorkflows) if (!_options.MergingWorkflows)
{ {

4
aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Official.Senparc/LINGYUN/Abp/WeChat/Official/Senparc/WeChatOfficialMessageHandler.cs

@ -15,8 +15,8 @@ public class WeChatOfficialMessageHandler : MessageHandler<WeChatOfficialMessage
PostModel postModel, PostModel postModel,
int maxRecordCount = 0, int maxRecordCount = 0,
bool onlyAllowEncryptMessage = false, bool onlyAllowEncryptMessage = false,
DeveloperInfo developerInfo = null, DeveloperInfo? developerInfo = null,
IServiceProvider serviceProvider = null) IServiceProvider? serviceProvider = null)
: base(inputStream, postModel, maxRecordCount, onlyAllowEncryptMessage, developerInfo, serviceProvider) : base(inputStream, postModel, maxRecordCount, onlyAllowEncryptMessage, developerInfo, serviceProvider)
{ {
} }

4
aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Work.AspNetCore/System/Text/Json/JsonElementExtensions.cs

@ -44,7 +44,7 @@ namespace System.Text.Json
public static int GetRootInt32(this JsonDocument json, string key, int defaultValue = 0) public static int GetRootInt32(this JsonDocument json, string key, int defaultValue = 0)
{ {
if (json.RootElement.TryGetProperty(key, out var property) && property.TryGetInt32(out int value)) if (json.RootElement.TryGetProperty(key, out var property) && property.TryGetInt32(out var value))
{ {
return value; return value;
} }
@ -53,7 +53,7 @@ namespace System.Text.Json
public static int GetInt32(this JsonElement json, string key, int defaultValue = 0) public static int GetInt32(this JsonElement json, string key, int defaultValue = 0)
{ {
if (json.TryGetProperty(key, out var property) && property.TryGetInt32(out int value)) if (json.TryGetProperty(key, out var property) && property.TryGetInt32(out var value))
{ {
return value; return value;
} }

2
aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Work/LINGYUN/Abp/WeChat/Work/JsSdk/Models/JsApiTicketInfoResponse.cs

@ -10,7 +10,7 @@ public class JsApiTicketInfoResponse : WeChatWorkResponse
/// </summary> /// </summary>
[JsonProperty("ticket")] [JsonProperty("ticket")]
[JsonPropertyName("ticket")] [JsonPropertyName("ticket")]
public string Ticket { get; set; } public string Ticket { get; set; } = default!;
/// <summary> /// <summary>
/// 凭证的有效时间(秒) /// 凭证的有效时间(秒)
/// </summary> /// </summary>

2
aspnet-core/framework/wechat/LINGYUN.Abp.WeChat.Work/System/WeChatWorkResponseDeserializeExtensions.cs

@ -6,6 +6,6 @@ internal static class WeChatWorkResponseDeserializeExtensions
{ {
public static T DeserializeObject<T>(this string responseContent) where T : WeChatWorkResponse public static T DeserializeObject<T>(this string responseContent) where T : WeChatWorkResponse
{ {
return JsonConvert.DeserializeObject<T>(responseContent); return JsonConvert.DeserializeObject<T>(responseContent)!;
} }
} }

2
aspnet-core/migrations/LY.MicroService.RealtimeMessage.EntityFrameworkCore/RealtimeMessageDbMigrationEventHandler.cs

@ -68,7 +68,7 @@ public class RealtimeMessageDbMigrationEventHandler : EfCoreDatabaseMigrationEve
new NotificationTemplate( new NotificationTemplate(
TenantNotificationNames.NewTenantRegistered, TenantNotificationNames.NewTenantRegistered,
formUser: adminEmailAddress, formUser: adminEmailAddress,
data: new Dictionary<string, object> data: new Dictionary<string, object?>
{ {
{ "name", eventData.Name }, { "name", eventData.Name },
{ "email", adminEmailAddress }, { "email", adminEmailAddress },

6
aspnet-core/migrations/LY.MicroService.TaskManagement.EntityFrameworkCore/TaskServiceDataSeeder.cs

@ -91,7 +91,7 @@ public class TaskServiceDataSeeder : ITransientDependency
Source = JobSource.System, Source = JobSource.System,
LockTimeOut = Options.JobFetchLockTimeOut, LockTimeOut = Options.JobFetchLockTimeOut,
TenantId = tenantId, TenantId = tenantId,
Type = typeof(BackgroundPollingJob).AssemblyQualifiedName, Type = typeof(BackgroundPollingJob).AssemblyQualifiedName!,
}; };
} }
@ -112,7 +112,7 @@ public class TaskServiceDataSeeder : ITransientDependency
Priority = JobPriority.High, Priority = JobPriority.High,
Source = JobSource.System, Source = JobSource.System,
TenantId = tenantId, TenantId = tenantId,
Type = typeof(BackgroundCleaningJob).AssemblyQualifiedName, Type = typeof(BackgroundCleaningJob).AssemblyQualifiedName!,
}; };
} }
@ -134,7 +134,7 @@ public class TaskServiceDataSeeder : ITransientDependency
Priority = JobPriority.High, Priority = JobPriority.High,
Source = JobSource.System, Source = JobSource.System,
TenantId = tenantId, TenantId = tenantId,
Type = typeof(BackgroundCheckingJob).AssemblyQualifiedName, Type = typeof(BackgroundCheckingJob).AssemblyQualifiedName!,
}; };
} }
} }

2
aspnet-core/modules/account/LINGYUN.Abp.Account.Application/LINGYUN/Abp/Account/MySecurityLogAppService.cs

@ -20,7 +20,7 @@ public class MySecurityLogAppService : AccountApplicationServiceBase, IMySecurit
{ {
var securityLog = await SecurityLogManager.GetAsync(id, includeDetails: true); var securityLog = await SecurityLogManager.GetAsync(id, includeDetails: true);
return ObjectMapper.Map<SecurityLog, SecurityLogDto>(securityLog); return ObjectMapper.Map<SecurityLog, SecurityLogDto>(securityLog!);
} }
public async virtual Task<PagedResultDto<SecurityLogDto>> GetListAsync(SecurityLogGetListInput input) public async virtual Task<PagedResultDto<SecurityLogDto>> GetListAsync(SecurityLogGetListInput input)

2
aspnet-core/modules/account/LINGYUN.Abp.Account.Web.IdentityServer/Pages/Account/IdentityServerLoginModel.cs

@ -274,7 +274,7 @@ namespace LINGYUN.Abp.Account.Web.IdentityServer.Pages.Account
SetTenantCookies(qrCodeInfo.TenantId); SetTenantCookies(qrCodeInfo.TenantId);
using (CurrentTenant.Change(qrCodeInfo.TenantId)) using (CurrentTenant.Change(qrCodeInfo.TenantId))
{ {
var user = await UserManager.FindByIdAsync(qrCodeInfo.UserId); var user = await UserManager.FindByIdAsync(qrCodeInfo.UserId!);
if (user == null) if (user == null)
{ {
// TODO: 用户验证无效? // TODO: 用户验证无效?

2
aspnet-core/modules/account/LINGYUN.Abp.Account.Web.OpenIddict/ViewModels/Authorize/AuthorizeViewModel.cs

@ -10,7 +10,7 @@ public class AuthorizeViewModel
[HiddenInput] [HiddenInput]
public string? Scope { get; set; } public string? Scope { get; set; }
public List<ScopeItemViewModel>? AvailableScopes { get; set; } public List<ScopeItemViewModel> AvailableScopes { get; set; } = new List<ScopeItemViewModel>();
} }
public class ScopeItemViewModel public class ScopeItemViewModel

6
aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/LinkLogged.cshtml.cs

@ -27,7 +27,7 @@ public class LinkLoggedModel : AccountPageModel
[BindProperty(SupportsGet = true)] [BindProperty(SupportsGet = true)]
public Guid? LinkTenantId { get; set; } public Guid? LinkTenantId { get; set; }
public string? LinkTenantAndUserName { get; set; } public string LinkTenantAndUserName { get; set; } = default!;
protected ICurrentPrincipalAccessor CurrentPrincipalAccessor => LazyServiceProvider.LazyGetRequiredService<ICurrentPrincipalAccessor>(); protected ICurrentPrincipalAccessor CurrentPrincipalAccessor => LazyServiceProvider.LazyGetRequiredService<ICurrentPrincipalAccessor>();
public IIdentityLinkUserAppService IdentityLinkUserAppService => LazyServiceProvider.LazyGetRequiredService<IIdentityLinkUserAppService>(); public IIdentityLinkUserAppService IdentityLinkUserAppService => LazyServiceProvider.LazyGetRequiredService<IIdentityLinkUserAppService>();
@ -47,7 +47,7 @@ public class LinkLoggedModel : AccountPageModel
} }
LinkTenantAndUserName = !validLinkUser.LinkTenantName.IsNullOrWhiteSpace() LinkTenantAndUserName = !validLinkUser.LinkTenantName.IsNullOrWhiteSpace()
? $"{validLinkUser.LinkTenantName}\\{validLinkUser.LinkUserName}" ? $"{validLinkUser.LinkTenantName}\\{validLinkUser.LinkUserName}"
: validLinkUser.LinkUserName; : validLinkUser.LinkUserName!;
return Page(); return Page();
} }
@ -90,7 +90,7 @@ public class LinkLoggedModel : AccountPageModel
return Page(); return Page();
} }
public virtual Task<string> GetReturnUrlAsync(string returnUrl, string returnUrlHash) public virtual Task<string> GetReturnUrlAsync(string returnUrl, string? returnUrlHash = null)
{ {
return base.GetRedirectUrlAsync(returnUrl, returnUrlHash); return base.GetRedirectUrlAsync(returnUrl, returnUrlHash);
} }

4
aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/Login.cshtml.cs

@ -322,7 +322,7 @@ public class LoginModel : AccountPageModel
SetTenantCookies(qrCodeInfo.TenantId); SetTenantCookies(qrCodeInfo.TenantId);
using (CurrentTenant.Change(qrCodeInfo.TenantId)) using (CurrentTenant.Change(qrCodeInfo.TenantId))
{ {
var user = await UserManager.FindByIdAsync(qrCodeInfo.UserId); var user = await UserManager.FindByIdAsync(qrCodeInfo.UserId!);
if (user == null) if (user == null)
{ {
// TODO: 用户验证无效? // TODO: 用户验证无效?
@ -669,7 +669,7 @@ public class LoginModel : AccountPageModel
#region LinkUser #region LinkUser
public async virtual Task<string> GetWithoutLinkReturnUrlAsync(string returnUrl, string returnUrlHash) public async virtual Task<string> GetWithoutLinkReturnUrlAsync(string returnUrl, string? returnUrlHash = null)
{ {
var redirectUrl = await base.GetRedirectUrlAsync(returnUrl, returnUrlHash); var redirectUrl = await base.GetRedirectUrlAsync(returnUrl, returnUrlHash);

2
aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/SendCode.cshtml

@ -17,7 +17,7 @@
<div class="d-grid gap-2"> <div class="d-grid gap-2">
<abp-button type="submit" button-type="Primary" class="mt-2 mb-3">@L["SendVerifyCode"]</abp-button> <abp-button type="submit" button-type="Primary" class="mt-2 mb-3">@L["SendVerifyCode"]</abp-button>
</div> </div>
<a asp-page="./Login" asp-all-route-data="@(new Dictionary<string, string> {{"returnUrl", Model.ReturnUrl}, {"returnUrlHash", Model.ReturnUrlHash}})"> <a asp-page="./Login" asp-all-route-data="@(new Dictionary<string, string?> {{"returnUrl", Model.ReturnUrl}, {"returnUrlHash", Model.ReturnUrlHash}})">
<i class="fa fa-long-arrow-left"></i> @L["Login"] <i class="fa fa-long-arrow-left"></i> @L["Login"]
</a> </a>
</form> </form>

2
aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/VerifyAuthenticatorCode.cshtml

@ -18,7 +18,7 @@
<abp-input asp-for="RememberBrowser" /> <abp-input asp-for="RememberBrowser" />
</div> </div>
<abp-button type="submit" button-type="Primary" class="btn-block btn-lg mt-3">@L["VerifyAuthenticatorCode"]</abp-button> <abp-button type="submit" button-type="Primary" class="btn-block btn-lg mt-3">@L["VerifyAuthenticatorCode"]</abp-button>
<a asp-page="./Login" asp-all-route-data="@(new Dictionary<string, string> {{"returnUrl", Model.ReturnUrl}, {"returnUrlHash", Model.ReturnUrlHash}})"> <a asp-page="./Login" asp-all-route-data="@(new Dictionary<string, string?> {{"returnUrl", Model.ReturnUrl}, {"returnUrlHash", Model.ReturnUrlHash}})">
<i class="fa fa-long-arrow-left"></i> @L["Login"] <i class="fa fa-long-arrow-left"></i> @L["Login"]
</a> </a>
</form> </form>

2
aspnet-core/modules/account/LINGYUN.Abp.Account.Web/Pages/Account/VerifyCode.cshtml

@ -21,7 +21,7 @@
<div class="d-grid gap-2"> <div class="d-grid gap-2">
<abp-button type="submit" button-type="Primary" class="mt-2 mb-3">@L["VerifyAuthenticatorCode"]</abp-button> <abp-button type="submit" button-type="Primary" class="mt-2 mb-3">@L["VerifyAuthenticatorCode"]</abp-button>
</div> </div>
<a asp-page="./SendCode" asp-all-route-data="@(new Dictionary<string, string> {{"returnUrl", Model.ReturnUrl}, {"returnUrlHash", Model.ReturnUrlHash}})"> <a asp-page="./SendCode" asp-all-route-data="@(new Dictionary<string, string?> {{"returnUrl", Model.ReturnUrl}, {"returnUrlHash", Model.ReturnUrlHash}})">
<i class="fa fa-long-arrow-left"></i> @L["ReSendVerifyCode"] <i class="fa fa-long-arrow-left"></i> @L["ReSendVerifyCode"]
</a> </a>
</form> </form>

2
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application.Contracts/LINGYUN/Abp/CachingManagement/CacheKeysDto.cs

@ -4,7 +4,7 @@ namespace LINGYUN.Abp.CachingManagement;
public class CacheKeysDto public class CacheKeysDto
{ {
public string NextMarker { get; set; } = default!; public string? NextMarker { get; set; }
public List<string> Keys { get; set; } = new List<string>(); public List<string> Keys { get; set; } = new List<string>();
} }

2
aspnet-core/modules/caching-management/LINGYUN.Abp.CachingManagement.Application/LINGYUN/Abp/CachingManagement/CacheAppService.cs

@ -67,7 +67,7 @@ public class CacheAppService : ApplicationService, ICacheAppService
sldExpr = input.SlidingExpiration.Value - Clock.Now; sldExpr = input.SlidingExpiration.Value - Clock.Now;
} }
await CacheManager.SetAsync(input.Key, input.Value, absExpir, sldExpr); await CacheManager.SetAsync(input.Key, input.Value ?? "", absExpir, sldExpr);
} }
[Authorize(CachingManagementPermissionNames.Cache.Refresh)] [Authorize(CachingManagementPermissionNames.Cache.Refresh)]

4
aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/EntityTypeInfoAppService.cs

@ -57,8 +57,8 @@ public class EntityTypeInfoAppService : DataProtectionManagementApplicationServi
return expression return expression
.AndIf(Input.IsAuditEnabled.HasValue, x => x.IsAuditEnabled == Input.IsAuditEnabled) .AndIf(Input.IsAuditEnabled.HasValue, x => x.IsAuditEnabled == Input.IsAuditEnabled)
.AndIf(!Input.Filter.IsNullOrWhiteSpace(), x => x.Name.Contains(Input.Filter) || .AndIf(!Input.Filter.IsNullOrWhiteSpace(), x => x.Name.Contains(Input.Filter!) ||
x.DisplayName.Contains(Input.Filter) || x.TypeFullName.Contains(Input.Filter)); x.DisplayName.Contains(Input.Filter!) || x.TypeFullName.Contains(Input.Filter!));
} }
} }
} }

2
aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/OrganizationUnitEntityRuleAppService.cs

@ -31,7 +31,7 @@ public class OrganizationUnitEntityRuleAppService : DataProtectionManagementAppl
{ {
var entityTypeInfo = await _entityTypeInfoRepository.GetAsync(input.EntityTypeId); var entityTypeInfo = await _entityTypeInfoRepository.GetAsync(input.EntityTypeId);
var entityRule = await _organizationUnitEntityRuleRepository.FindEntityRuleAsync(input.OrgCode, entityTypeInfo.TypeFullName, input.Operation); var entityRule = await _organizationUnitEntityRuleRepository.FindEntityRuleAsync(input.OrgCode, entityTypeInfo.TypeFullName, input.Operation);
return ObjectMapper.Map<OrganizationUnitEntityRule, OrganizationUnitEntityRuleDto>(entityRule); return ObjectMapper.Map<OrganizationUnitEntityRule, OrganizationUnitEntityRuleDto>(entityRule!);
} }
[Authorize(DataProtectionManagementPermissionNames.OrganizationUnitEntityRule.Create)] [Authorize(DataProtectionManagementPermissionNames.OrganizationUnitEntityRule.Create)]

2
aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/RoleEntityRuleAppService.cs

@ -31,7 +31,7 @@ public class RoleEntityRuleAppService : DataProtectionManagementApplicationServi
{ {
var entityTypeInfo = await _entityTypeInfoRepository.GetAsync(input.EntityTypeId); var entityTypeInfo = await _entityTypeInfoRepository.GetAsync(input.EntityTypeId);
var entityRule = await _roleEntityRuleRepository.FindEntityRuleAsync(input.RoleName, entityTypeInfo.TypeFullName, input.Operation); var entityRule = await _roleEntityRuleRepository.FindEntityRuleAsync(input.RoleName, entityTypeInfo.TypeFullName, input.Operation);
return ObjectMapper.Map<RoleEntityRule, RoleEntityRuleDto>(entityRule); return ObjectMapper.Map<RoleEntityRule, RoleEntityRuleDto>(entityRule!);
} }
[Authorize(DataProtectionManagementPermissionNames.RoleEntityRule.Create)] [Authorize(DataProtectionManagementPermissionNames.RoleEntityRule.Create)]

2
aspnet-core/modules/data-protection/LINGYUN.Abp.DataProtectionManagement.Application/LINGYUN/Abp/DataProtectionManagement/SubjectStrategyAppService.cs

@ -23,7 +23,7 @@ public class SubjectStrategyAppService : DataProtectionManagementApplicationServ
{ {
var subjectStrategy = await _repository.FindBySubjectAsync(input.SubjectName, input.SubjectId); var subjectStrategy = await _repository.FindBySubjectAsync(input.SubjectName, input.SubjectId);
return ObjectMapper.Map<SubjectStrategy, SubjectStrategyDto>(subjectStrategy); return ObjectMapper.Map<SubjectStrategy, SubjectStrategyDto>(subjectStrategy!);
} }
[Authorize(DataProtectionManagementPermissionNames.SubjectStrategy.Change)] [Authorize(DataProtectionManagementPermissionNames.SubjectStrategy.Change)]

8
aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.MySql/LINGYUN/Abp/Elsa/EntityFrameworkCore/MySql/AbpElsaEntityFrameworkCoreMySqlModule.cs

@ -45,9 +45,11 @@ public class AbpElsaEntityFrameworkCoreMySqlModule : AbpModule
var configuration = context.ServiceProvider.GetRequiredService<IConfiguration>(); var configuration = context.ServiceProvider.GetRequiredService<IConfiguration>();
if (configuration.GetValue<bool>("Elsa:Features:DefaultPersistence:EntityFrameworkCore:MySql:Enabled")) if (configuration.GetValue<bool>("Elsa:Features:DefaultPersistence:EntityFrameworkCore:MySql:Enabled"))
{ {
await context.ServiceProvider var sqlInstaller = context.ServiceProvider.GetService<MySqlElsaDataBaseInstaller>();
.GetService<MySqlElsaDataBaseInstaller>() if (sqlInstaller != null)
?.InstallAsync(); {
await sqlInstaller.InstallAsync();
}
} }
} }
} }

8
aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.PostgreSql/LINGYUN/Abp/Elsa/EntityFrameworkCore/PostgreSql/AbpElsaEntityFrameworkCorePostgreSqlModule.cs

@ -45,9 +45,11 @@ public class AbpElsaEntityFrameworkCorePostgreSqlModule : AbpModule
var configuration = context.ServiceProvider.GetRequiredService<IConfiguration>(); var configuration = context.ServiceProvider.GetRequiredService<IConfiguration>();
if (configuration.GetValue<bool>("Elsa:Features:DefaultPersistence:EntityFrameworkCore:PostgreSql:Enabled")) if (configuration.GetValue<bool>("Elsa:Features:DefaultPersistence:EntityFrameworkCore:PostgreSql:Enabled"))
{ {
await context.ServiceProvider var sqlInstaller = context.ServiceProvider.GetService<PostgreSqlElsaDataBaseInstaller>();
.GetService<PostgreSqlElsaDataBaseInstaller>() if (sqlInstaller != null)
?.InstallAsync(); {
await sqlInstaller.InstallAsync();
}
} }
} }
} }

2
aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.PostgreSql/LINGYUN/Abp/Elsa/EntityFrameworkCore/PostgreSql/Migrations/PostgreSqlElsaDataBaseInstaller.cs

@ -48,7 +48,7 @@ public class PostgreSqlElsaDataBaseInstaller : IElsaDataBaseInstaller, ITransien
var builder = new NpgsqlConnectionStringBuilder(connectionString); var builder = new NpgsqlConnectionStringBuilder(connectionString);
var dataBaseName = await CreateDataBaseIfNotExists(builder.Database, builder); var dataBaseName = await CreateDataBaseIfNotExists(builder.Database!, builder);
builder.Database = dataBaseName; builder.Database = dataBaseName;

8
aspnet-core/modules/elsa/LINGYUN.Abp.Elsa.EntityFrameworkCore.SqlServer/LINGYUN/Abp/Elsa/EntityFrameworkCore/SqlServer/AbpElsaEntityFrameworkCoreSqlServerModule.cs

@ -45,9 +45,11 @@ public class AbpElsaEntityFrameworkCoreSqlServerModule : AbpModule
var configuration = context.ServiceProvider.GetRequiredService<IConfiguration>(); var configuration = context.ServiceProvider.GetRequiredService<IConfiguration>();
if (configuration.GetValue<bool>("Elsa:Features:DefaultPersistence:EntityFrameworkCore:SqlServer:Enabled")) if (configuration.GetValue<bool>("Elsa:Features:DefaultPersistence:EntityFrameworkCore:SqlServer:Enabled"))
{ {
await context.ServiceProvider var sqlInstaller = context.ServiceProvider.GetService<SqlServerElsaDataBaseInstaller>();
.GetService<SqlServerElsaDataBaseInstaller>() if (sqlInstaller != null)
?.InstallAsync(); {
await sqlInstaller.InstallAsync();
}
} }
} }
} }

12
aspnet-core/modules/identity/LINGYUN.Abp.Identity.OrganizaztionUnits/LINGYUN/Abp/Identity/OrganizaztionUnits/OrganizaztionUnitDynamicClaimsPrincipalContributorCache.cs

@ -59,15 +59,19 @@ public class OrganizaztionUnitDynamicClaimsPrincipalContributorCache : IdentityD
var userRoles = cacheItems.Claims var userRoles = cacheItems.Claims
.FindAll(x => x.Type == AbpClaimTypes.Role) .FindAll(x => x.Type == AbpClaimTypes.Role)
.Where(x => !x.Value.IsNullOrWhiteSpace())
.Select(x => x.Value) .Select(x => x.Value)
.Distinct(); .Distinct();
var roleOus = await IdentityRoleRepository.GetOrganizationUnitsAsync(userRoles); if (userRoles != null)
foreach (var roleOu in roleOus)
{ {
if (!cacheItems.Claims.Any(x => x.Type == AbpOrganizationUnitClaimTypes.OrganizationUnit && x.Value == roleOu.Code)) var roleOus = await IdentityRoleRepository.GetOrganizationUnitsAsync(userRoles!);
foreach (var roleOu in roleOus)
{ {
cacheItems.Claims.Add(new AbpDynamicClaim(AbpOrganizationUnitClaimTypes.OrganizationUnit, roleOu.Code)); if (!cacheItems.Claims.Any(x => x.Type == AbpOrganizationUnitClaimTypes.OrganizationUnit && x.Value == roleOu.Code))
{
cacheItems.Claims.Add(new AbpDynamicClaim(AbpOrganizationUnitClaimTypes.OrganizationUnit, roleOu.Code));
}
} }
} }

2
aspnet-core/modules/identity/LINGYUN.Abp.Identity.Session/LINGYUN/Abp/Identity/Session/IdentitySessionCacheItem.cs

@ -53,7 +53,7 @@ public class IdentitySessionCacheItem
public IdentitySessionCacheItem( public IdentitySessionCacheItem(
string device, string device,
string deviceInfo, string? deviceInfo,
Guid userId, Guid userId,
string sessionId, string sessionId,
string? clientId, string? clientId,

8
aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Application/LINGYUN/Abp/OpenIddict/Applications/OpenIddictApplicationAppService.cs

@ -28,7 +28,7 @@ public class OpenIddictApplicationAppService : OpenIddictApplicationServiceBase,
{ {
var application = await _applicationRepository.GetAsync(id); var application = await _applicationRepository.GetAsync(id);
return application.ToDto(JsonSerializer); return application.ToDto(JsonSerializer)!;
} }
public async virtual Task<PagedResultDto<OpenIddictApplicationDto>> GetListAsync(OpenIddictApplicationGetListInput input) public async virtual Task<PagedResultDto<OpenIddictApplicationDto>> GetListAsync(OpenIddictApplicationGetListInput input)
@ -37,7 +37,7 @@ public class OpenIddictApplicationAppService : OpenIddictApplicationServiceBase,
var entites = await _applicationRepository.GetListAsync(input.Sorting, input.SkipCount, input.MaxResultCount, input.Filter); var entites = await _applicationRepository.GetListAsync(input.Sorting, input.SkipCount, input.MaxResultCount, input.Filter);
return new PagedResultDto<OpenIddictApplicationDto>(totalCount, return new PagedResultDto<OpenIddictApplicationDto>(totalCount,
entites.Select(entity => entity.ToDto(JsonSerializer)).ToList()); entites.Select(entity => entity.ToDto(JsonSerializer)!).ToList());
} }
[Authorize(AbpOpenIddictPermissions.Applications.Create)] [Authorize(AbpOpenIddictPermissions.Applications.Create)]
@ -60,7 +60,7 @@ public class OpenIddictApplicationAppService : OpenIddictApplicationServiceBase,
application = await _applicationRepository.FindByClientIdAsync(input.ClientId); application = await _applicationRepository.FindByClientIdAsync(input.ClientId);
return application.ToDto(JsonSerializer); return application.ToDto(JsonSerializer)!;
} }
[Authorize(AbpOpenIddictPermissions.Applications.Update)] [Authorize(AbpOpenIddictPermissions.Applications.Update)]
@ -90,7 +90,7 @@ public class OpenIddictApplicationAppService : OpenIddictApplicationServiceBase,
application = await _applicationRepository.GetAsync(id); application = await _applicationRepository.GetAsync(id);
return application.ToDto(JsonSerializer); return application.ToDto(JsonSerializer)!;
} }
[Authorize(AbpOpenIddictPermissions.Applications.Delete)] [Authorize(AbpOpenIddictPermissions.Applications.Delete)]

2
aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Application/LINGYUN/Abp/OpenIddict/Authorizations/OpenIddictAuthorizationAppService.cs

@ -91,6 +91,6 @@ public class OpenIddictAuthorizationAppService : OpenIddictApplicationServiceBas
var entites = await AsyncExecuter.ToListAsync(queryable); var entites = await AsyncExecuter.ToListAsync(queryable);
return new PagedResultDto<OpenIddictAuthorizationDto>(totalCount, return new PagedResultDto<OpenIddictAuthorizationDto>(totalCount,
entites.Select(entity => entity.ToDto(JsonSerializer)).ToList()); entites.Select(entity => entity.ToDto(JsonSerializer)!).ToList());
} }
} }

4
aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Sms/LINGYUN/Abp/OpenIddict/Sms/SmsTokenExtensionGrant.cs

@ -47,8 +47,8 @@ public class SmsTokenExtensionGrant : ITokenExtensionGrant
return Forbid(properties, OpenIddictServerAspNetCoreDefaults.AuthenticationScheme); return Forbid(properties, OpenIddictServerAspNetCoreDefaults.AuthenticationScheme);
} }
var phoneToken = phoneTokenParam.Value.ToString(); var phoneToken = phoneTokenParam.Value.ToString()!;
var phoneNumber = phoneNumberParam.Value.ToString(); var phoneNumber = phoneNumberParam.Value.ToString()!;
await identityOptions.SetAsync(); await identityOptions.SetAsync();

2
aspnet-core/modules/platform/LINGYUN.Abp.UI.Navigation.VueVbenAdmin5/LINGYUN/Abp/UI/Navigation/VueVbenAdmin5/VueVbenAdmin5StandardMenuConverter.cs

@ -20,7 +20,7 @@ public class VueVbenAdmin5StandardMenuConverter : IStandardMenuConverter, ISingl
if (menu.ExtraProperties.TryGetValue("icon", out var icon)) if (menu.ExtraProperties.TryGetValue("icon", out var icon))
{ {
standardMenu.Icon = icon.ToString(); standardMenu.Icon = icon?.ToString();
} }
return standardMenu; return standardMenu;

2
aspnet-core/modules/realtime-message/LINGYUN.Abp.MessageService.Application/LINGYUN/Abp/MessageService/Chat/MyFriendAppService.cs

@ -28,7 +28,7 @@ public class MyFriendAppService : ApplicationService, IMyFriendAppService
public async virtual Task<UserFriend> GetAsync(Guid friendId) public async virtual Task<UserFriend> GetAsync(Guid friendId)
{ {
return await FriendStore.GetMemberAsync(CurrentTenant.Id, CurrentUser.GetId(), friendId); return (await FriendStore.GetMemberAsync(CurrentTenant.Id, CurrentUser.GetId(), friendId))!;
} }
public async virtual Task CreateAsync(MyFriendCreateDto input) public async virtual Task CreateAsync(MyFriendCreateDto input)

2
aspnet-core/modules/realtime-notifications/LINGYUN.Abp.ExceptionHandling.Notifications/LINGYUN/Abp/ExceptionHandling/Notifications/AbpNotificationsExceptionSubscriber.cs

@ -29,7 +29,7 @@ public class AbpNotificationsExceptionSubscriber : AbpExceptionSubscriberBase
new NotificationTemplate( new NotificationTemplate(
NotificationsCommonNotificationNames.ExceptionHandling, NotificationsCommonNotificationNames.ExceptionHandling,
formUser: "System", formUser: "System",
data: new Dictionary<string, object> data: new Dictionary<string, object?>
{ {
{ "header", "An application exception has occurred" }, { "header", "An application exception has occurred" },
{ "footer", $"Copyright to LY Colin © {DateTime.Now.Year}" }, { "footer", $"Copyright to LY Colin © {DateTime.Now.Year}" },

2
aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Application/LINGYUN/Abp/Notifications/Definitions/Groups/NotificationGroupDefinitionAppService.cs

@ -136,7 +136,7 @@ public class NotificationGroupDefinitionAppService : AbpNotificationsApplication
} }
} }
protected async virtual Task<NotificationDefinitionGroupRecord> FindByNameAsync(string name) protected async virtual Task<NotificationDefinitionGroupRecord?> FindByNameAsync(string name)
{ {
var definitionRecord = await _definitionGroupRecordRepository.FindByNameAsync(name); var definitionRecord = await _definitionGroupRecordRepository.FindByNameAsync(name);

2
aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Application/LINGYUN/Abp/Notifications/Definitions/Notifications/NotificationDefinitionAppService.cs

@ -179,7 +179,7 @@ public class NotificationDefinitionAppService : AbpNotificationsApplicationServi
} }
} }
protected async virtual Task<NotificationDefinitionRecord> FindRecordByNameAsync(string name) protected async virtual Task<NotificationDefinitionRecord?> FindRecordByNameAsync(string name)
{ {
return await _definitionRecordRepository.FindByNameAsync(name); return await _definitionRecordRepository.FindByNameAsync(name);
} }

8
aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Domain/LINGYUN/Abp/Notifications/DynamicNotificationDefinitionInMemoryCache.cs

@ -47,14 +47,20 @@ public class DynamicNotificationDefinitionInMemoryCache : IDynamicNotificationDe
foreach (var notificationGroupRecord in notificationGroupRecords) foreach (var notificationGroupRecord in notificationGroupRecords)
{ {
ILocalizableString? displayName = null;
if (!notificationGroupRecord.DisplayName.IsNullOrWhiteSpace())
{
displayName = LocalizableStringSerializer.Deserialize(notificationGroupRecord.DisplayName);
}
ILocalizableString? description = null; ILocalizableString? description = null;
if (!notificationGroupRecord.Description.IsNullOrWhiteSpace()) if (!notificationGroupRecord.Description.IsNullOrWhiteSpace())
{ {
description = LocalizableStringSerializer.Deserialize(notificationGroupRecord.Description); description = LocalizableStringSerializer.Deserialize(notificationGroupRecord.Description);
} }
var notificationGroup = context.AddGroup( var notificationGroup = context.AddGroup(
notificationGroupRecord.Name, notificationGroupRecord.Name,
LocalizableStringSerializer.Deserialize(notificationGroupRecord.DisplayName), displayName,
description, description,
notificationGroupRecord.AllowSubscriptionToClients notificationGroupRecord.AllowSubscriptionToClients
); );

2
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/ActionRecord.cs

@ -9,7 +9,7 @@ namespace LINGYUN.Abp.RulesEngineManagement;
public class ActionRecord : Entity<Guid>, IMultiTenant, IHasExtraProperties public class ActionRecord : Entity<Guid>, IMultiTenant, IHasExtraProperties
{ {
public virtual Guid? TenantId { get; protected set; } public virtual Guid? TenantId { get; protected set; }
public virtual string Name { get; protected set; } public virtual string Name { get; protected set; } = default!;
public virtual ExtraPropertyDictionary ExtraProperties { get; protected set; } public virtual ExtraPropertyDictionary ExtraProperties { get; protected set; }
protected ActionRecord() protected ActionRecord()
{ {

4
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/IRuleRecordRepository.cs

@ -13,10 +13,10 @@ public interface IRuleRecordRepository : IRepository<RuleRecord, Guid>
Task<List<ParamRecord>> GetParamsAsync( Task<List<ParamRecord>> GetParamsAsync(
Guid ruleId, Guid ruleId,
CancellationToken cancellationToken = default); CancellationToken cancellationToken = default);
Task<ActionRecord> GetSuccessActionAsync( Task<ActionRecord?> GetSuccessActionAsync(
Guid ruleId, Guid ruleId,
CancellationToken cancellationToken = default); CancellationToken cancellationToken = default);
Task<ActionRecord> GetFailureActionAsync( Task<ActionRecord?> GetFailureActionAsync(
Guid ruleId, Guid ruleId,
CancellationToken cancellationToken = default); CancellationToken cancellationToken = default);
} }

2
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/IWorkflowRecordRepository.cs

@ -7,7 +7,7 @@ using Volo.Abp.Domain.Repositories;
namespace LINGYUN.Abp.RulesEngineManagement; namespace LINGYUN.Abp.RulesEngineManagement;
public interface IWorkflowRecordRepository : IRepository<WorkflowRecord, Guid> public interface IWorkflowRecordRepository : IRepository<WorkflowRecord, Guid>
{ {
Task<WorkflowRecord> FindByNameAsync( Task<WorkflowRecord?> FindByNameAsync(
string name, string name,
CancellationToken cancellationToken = default); CancellationToken cancellationToken = default);

4
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/ParamRecord.cs

@ -7,8 +7,8 @@ namespace LINGYUN.Abp.RulesEngineManagement;
public class ParamRecord : Entity<Guid>, IMultiTenant public class ParamRecord : Entity<Guid>, IMultiTenant
{ {
public virtual Guid? TenantId { get; protected set; } public virtual Guid? TenantId { get; protected set; }
public virtual string Name { get; protected set; } public virtual string Name { get; protected set; } = default!;
public virtual string Expression { get; protected set; } public virtual string Expression { get; protected set; } = default!;
protected ParamRecord() protected ParamRecord()
{ {

20
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/RuleRecord.cs

@ -13,16 +13,16 @@ public class RuleRecord : AuditedAggregateRoot<Guid>, IMultiTenant
public virtual Guid? TenantId { get; protected set; } public virtual Guid? TenantId { get; protected set; }
public virtual Guid? ParentId { get; protected set; } public virtual Guid? ParentId { get; protected set; }
public virtual bool Enabled { get; set; } public virtual bool Enabled { get; set; }
public virtual string Name { get; protected set; } public virtual string Name { get; protected set; } = default!;
public virtual string Operator { get; protected set; } public virtual string? Operator { get; protected set; }
public virtual string ErrorMessage { get; protected set; } public virtual string ErrorMessage { get; protected set; } = default!;
public virtual RuleExpressionType RuleExpressionType { get; set; } public virtual RuleExpressionType RuleExpressionType { get; set; }
public virtual string InjectWorkflows { get; set; } public virtual string? InjectWorkflows { get; set; }
public virtual string Expression { get; protected set; } public virtual string Expression { get; protected set; } = default!;
public virtual string SuccessEvent { get; set; } public virtual string? SuccessEvent { get; set; }
public virtual ICollection<RuleParamRecord> LocalParams { get; protected set; } public virtual ICollection<RuleParamRecord> LocalParams { get; protected set; } = default!;
public virtual RuleActionRecord OnSuccess { get; protected set; } public virtual RuleActionRecord OnSuccess { get; protected set; } = default!;
public virtual RuleActionRecord OnFailure { get; protected set; } public virtual RuleActionRecord OnFailure { get; protected set; } = default!;
protected RuleRecord() protected RuleRecord()
{ {
ExtraProperties = new ExtraPropertyDictionary(); ExtraProperties = new ExtraPropertyDictionary();
@ -34,7 +34,7 @@ public class RuleRecord : AuditedAggregateRoot<Guid>, IMultiTenant
string name, string name,
string errorMessage, string errorMessage,
string expression, string expression,
string @operator = null, string? @operator = null,
Guid? parentId = null, Guid? parentId = null,
Guid? tenantId = null) Guid? tenantId = null)
: base(id) : base(id)

2
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/RulesEngineManagementDbPropertites.cs

@ -5,7 +5,7 @@ public static class RulesEngineManagementDbPropertites
{ {
public static string DbTablePrefix { get; set; } = AbpCommonDbProperties.DbTablePrefix + "RulesEngine"; public static string DbTablePrefix { get; set; } = AbpCommonDbProperties.DbTablePrefix + "RulesEngine";
public static string DbSchema { get; set; } = AbpCommonDbProperties.DbSchema; public static string? DbSchema { get; set; } = AbpCommonDbProperties.DbSchema;
public const string ConnectionStringName = "RulesEngineManagement"; public const string ConnectionStringName = "RulesEngineManagement";

12
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/WorkflowRecord.cs

@ -11,11 +11,11 @@ namespace LINGYUN.Abp.RulesEngineManagement;
public class WorkflowRecord : AuditedAggregateRoot<Guid>, IMultiTenant public class WorkflowRecord : AuditedAggregateRoot<Guid>, IMultiTenant
{ {
public virtual Guid? TenantId { get; protected set; } public virtual Guid? TenantId { get; protected set; }
public virtual string Name { get; protected set; } public virtual string Name { get; protected set; } = default!;
public virtual string TypeFullName { get; protected set; } public virtual string TypeFullName { get; protected set; } = default!;
public virtual string InjectWorkflows { get; protected set; } public virtual string? InjectWorkflows { get; protected set; }
public virtual ICollection<WorkflowParamRecord> GlobalParams { get; protected set; } public virtual ICollection<WorkflowParamRecord> GlobalParams { get; protected set; } = default!;
public virtual ICollection<WorkflowRuleRecord> Rules { get; protected set; } public virtual ICollection<WorkflowRuleRecord> Rules { get; protected set; } = default!;
protected WorkflowRecord() protected WorkflowRecord()
{ {
ExtraProperties = new ExtraPropertyDictionary(); ExtraProperties = new ExtraPropertyDictionary();
@ -26,7 +26,7 @@ public class WorkflowRecord : AuditedAggregateRoot<Guid>, IMultiTenant
Guid id, Guid id,
string name, string name,
string typeFullName, string typeFullName,
string injectWorkflows = null, string? injectWorkflows = null,
Guid? tenantId = null) Guid? tenantId = null)
: base(id) : base(id)
{ {

10
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.Domain/LINGYUN/Abp/RulesEngineManagement/WorkflowStore.cs

@ -27,9 +27,13 @@ public class WorkflowStore : IWorkflowStore, ITransientDependency
RuleRepository = ruleRepository; RuleRepository = ruleRepository;
} }
public async virtual Task<Workflow> GetWorkflowAsync(string workflowName, CancellationToken cancellationToken = default) public async virtual Task<Workflow?> GetWorkflowAsync(string workflowName, CancellationToken cancellationToken = default)
{ {
var workflowRecord = await WorkflowRepository.FindByNameAsync(workflowName, cancellationToken); var workflowRecord = await WorkflowRepository.FindByNameAsync(workflowName, cancellationToken);
if (workflowRecord == null)
{
return null;
}
var workflow = await MapToWorkflow(workflowRecord); var workflow = await MapToWorkflow(workflowRecord);
@ -44,7 +48,7 @@ public class WorkflowStore : IWorkflowStore, ITransientDependency
async (cache) => async (cache) =>
{ {
var workflows = new List<Workflow>(); var workflows = new List<Workflow>();
var workflowRecords = await WorkflowRepository.GetListAsync(inputType.FullName, cancellationToken); var workflowRecords = await WorkflowRepository.GetListAsync(inputType.FullName!, cancellationToken);
foreach (var workflowRecord in workflowRecords) foreach (var workflowRecord in workflowRecords)
{ {
@ -57,7 +61,7 @@ public class WorkflowStore : IWorkflowStore, ITransientDependency
return workflows; return workflows;
}); });
return workflows; return workflows!;
} }
protected async virtual Task<Workflow> MapToWorkflow(WorkflowRecord workflowRecord) protected async virtual Task<Workflow> MapToWorkflow(WorkflowRecord workflowRecord)

4
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore/LINGYUN/Abp/RulesEngineManagement/EntityFrameworkCore/EfCoreRuleRecordRepository.cs

@ -23,7 +23,7 @@ public class EfCoreRuleRecordRepository : EfCoreRepository<IRulesEngineManagemen
.ToListAsync(GetCancellationToken(cancellationToken)); .ToListAsync(GetCancellationToken(cancellationToken));
} }
public async virtual Task<ActionRecord> GetFailureActionAsync(Guid ruleId, CancellationToken cancellationToken = default) public async virtual Task<ActionRecord?> GetFailureActionAsync(Guid ruleId, CancellationToken cancellationToken = default)
{ {
var dbContext = await GetDbContextAsync(); var dbContext = await GetDbContextAsync();
@ -51,7 +51,7 @@ public class EfCoreRuleRecordRepository : EfCoreRepository<IRulesEngineManagemen
.ToListAsync(GetCancellationToken(cancellationToken)); .ToListAsync(GetCancellationToken(cancellationToken));
} }
public async virtual Task<ActionRecord> GetSuccessActionAsync(Guid ruleId, CancellationToken cancellationToken = default) public async virtual Task<ActionRecord?> GetSuccessActionAsync(Guid ruleId, CancellationToken cancellationToken = default)
{ {
var dbContext = await GetDbContextAsync(); var dbContext = await GetDbContextAsync();

2
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore/LINGYUN/Abp/RulesEngineManagement/EntityFrameworkCore/EfCoreWorkflowRecordRepository.cs

@ -16,7 +16,7 @@ public class EfCoreWorkflowRecordRepository : EfCoreRepository<IRulesEngineManag
{ {
} }
public async virtual Task<WorkflowRecord> FindByNameAsync(string name, CancellationToken cancellationToken = default) public async virtual Task<WorkflowRecord?> FindByNameAsync(string name, CancellationToken cancellationToken = default)
{ {
return await (await GetDbSetAsync()) return await (await GetDbSetAsync())
.Where(x => x.Name == name) .Where(x => x.Name == name)

246
aspnet-core/modules/rules-management/rules-engine/LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore/LINGYUN/Abp/RulesEngineManagement/EntityFrameworkCore/RulesEngineManagementDbContextModelCreatingExtensions.cs

@ -1,128 +1,128 @@
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Volo.Abp; using Volo.Abp;
using Volo.Abp.EntityFrameworkCore.Modeling; using Volo.Abp.EntityFrameworkCore.Modeling;
namespace LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore; namespace LINGYUN.Abp.RulesEngineManagement.EntityFrameworkCore;
public static class RulesEngineManagementDbContextModelCreatingExtensions public static class RulesEngineManagementDbContextModelCreatingExtensions
{ {
public static void ConfigureRulesEngineManagement( public static void ConfigureRulesEngineManagement(
this ModelBuilder builder) this ModelBuilder builder)
{ {
Check.NotNull(builder, nameof(builder)); Check.NotNull(builder, nameof(builder));
builder.Entity<ActionRecord>(b => builder.Entity<ActionRecord>(b =>
{ {
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Actions", RulesEngineManagementDbPropertites.DbSchema); b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Actions", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention(); b.ConfigureByConvention();
b.Property(t => t.Name) b.Property(t => t.Name)
.HasMaxLength(ActionRecordConsts.MaxNameLength) .HasMaxLength(ActionRecordConsts.MaxNameLength)
.IsRequired();
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique();
b.ApplyObjectExtensionMappings();
});
builder.Entity<ParamRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Params", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.Property(t => t.Name)
.HasMaxLength(ParamRecordConsts.MaxNameLength)
.IsRequired();
b.Property(t => t.Expression)
.HasMaxLength(ParamRecordConsts.MaxExpressionLength)
.IsRequired();
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique();
b.ApplyObjectExtensionMappings();
});
builder.Entity<RuleRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Rules", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.Property(t => t.Name)
.HasMaxLength(RuleRecordConsts.MaxNameLength)
.IsRequired();
b.Property(t => t.Expression)
.HasMaxLength(RuleRecordConsts.MaxExpressionLength)
.IsRequired(); .IsRequired();
b.Property(t => t.ErrorMessage)
.HasMaxLength(RuleRecordConsts.MaxErrorMessageLength)
.IsRequired();
b.Property(t => t.Operator)
.HasMaxLength(RuleRecordConsts.MaxOperatorLength);
b.Property(t => t.InjectWorkflows)
.HasMaxLength(RuleRecordConsts.MaxInjectWorkflowsLength);
b.Property(t => t.SuccessEvent)
.HasMaxLength(RuleRecordConsts.MaxSuccessEventLength);
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique();
b.ApplyObjectExtensionMappings();
});
builder.Entity<WorkflowRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Workflows", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique(); b.Property(t => t.Name)
.HasMaxLength(WorkflowRecordConsts.MaxNameLength)
b.ApplyObjectExtensionMappings();
});
builder.Entity<ParamRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Params", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.Property(t => t.Name)
.HasMaxLength(ParamRecordConsts.MaxNameLength)
.IsRequired();
b.Property(t => t.Expression)
.HasMaxLength(ParamRecordConsts.MaxExpressionLength)
.IsRequired(); .IsRequired();
b.Property(t => t.TypeFullName)
.HasMaxLength(WorkflowRecordConsts.MaxTypeFullNameLength)
.IsRequired();
b.Property(t => t.InjectWorkflows)
.HasMaxLength(WorkflowRecordConsts.MaxInjectWorkflowsLength);
b.HasIndex(u => u.TypeFullName);
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique();
b.ApplyObjectExtensionMappings();
});
builder.Entity<RuleActionRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "RuleActions", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
builder.Entity<RuleParamRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "RuleParams", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
builder.Entity<WorkflowParamRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "WorkflowParams", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
builder.Entity<WorkflowRuleRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "WorkflowRules", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique(); builder.TryConfigureObjectExtensions<RulesEngineManagementDbContext>();
}
b.ApplyObjectExtensionMappings(); }
});
builder.Entity<RuleRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Rules", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.Property(t => t.Name)
.HasMaxLength(RuleRecordConsts.MaxNameLength)
.IsRequired();
b.Property(t => t.Expression)
.HasMaxLength(RuleRecordConsts.MaxExpressionLength)
.IsRequired();
b.Property(t => t.ErrorMessage)
.HasMaxLength(RuleRecordConsts.MaxErrorMessageLength)
.IsRequired();
b.Property(t => t.Operator)
.HasMaxLength(RuleRecordConsts.MaxOperatorLength);
b.Property(t => t.InjectWorkflows)
.HasMaxLength(RuleRecordConsts.MaxInjectWorkflowsLength);
b.Property(t => t.SuccessEvent)
.HasMaxLength(RuleRecordConsts.MaxSuccessEventLength);
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique();
b.ApplyObjectExtensionMappings();
});
builder.Entity<WorkflowRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "Workflows", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.Property(t => t.Name)
.HasMaxLength(WorkflowRecordConsts.MaxNameLength)
.IsRequired();
b.Property(t => t.TypeFullName)
.HasMaxLength(WorkflowRecordConsts.MaxTypeFullNameLength)
.IsRequired();
b.Property(t => t.InjectWorkflows)
.HasMaxLength(WorkflowRecordConsts.MaxInjectWorkflowsLength);
b.HasIndex(u => u.TypeFullName);
b.HasIndex(u => new { u.TenantId, u.Name }).IsUnique();
b.ApplyObjectExtensionMappings();
});
builder.Entity<RuleActionRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "RuleActions", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
builder.Entity<RuleParamRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "RuleParams", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
builder.Entity<WorkflowParamRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "WorkflowParams", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
builder.Entity<WorkflowRuleRecord>(b =>
{
b.ToTable(RulesEngineManagementDbPropertites.DbTablePrefix + "WorkflowRules", RulesEngineManagementDbPropertites.DbSchema);
b.ConfigureByConvention();
b.ApplyObjectExtensionMappings();
});
builder.TryConfigureObjectExtensions<RulesEngineManagementDbContext>();
}
}

4
aspnet-core/modules/settings/LINGYUN.Abp.SettingManagement.Application/LINGYUN/Abp/SettingManagement/SettingDefinitionEqualityComparer.cs

@ -4,9 +4,9 @@ using Volo.Abp.Settings;
namespace LINGYUN.Abp.SettingManagement; namespace LINGYUN.Abp.SettingManagement;
public class SettingDefinitionEqualityComparer : EqualityComparer<SettingDefinition> public class SettingDefinitionEqualityComparer : EqualityComparer<SettingDefinition>
{ {
public override bool Equals(SettingDefinition x, SettingDefinition y) public override bool Equals(SettingDefinition? x, SettingDefinition? y)
{ {
return x.Name == y.Name; return x?.Name == y?.Name;
} }
public override int GetHashCode(SettingDefinition obj) public override int GetHashCode(SettingDefinition obj)

4
aspnet-core/modules/task-management/LINGYUN.Abp.Elasticsearch.Jobs/LINGYUN/Abp/Elasticsearch/Jobs/ExpiredIndicesCleanupJob.cs

@ -61,7 +61,7 @@ public class ExpiredIndicesCleanupJob : IJobRunnable
{ {
indexResponse.TryGetOriginalException(out var originalException); indexResponse.TryGetOriginalException(out var originalException);
indexResponse.TryGetElasticsearchServerError(out var elasticsearchServerError); indexResponse.TryGetElasticsearchServerError(out var elasticsearchServerError);
throw new AbpJobExecutionException(GetType(), elasticsearchServerError?.ToString(), originalException); throw new AbpJobExecutionException(GetType(), elasticsearchServerError!.ToString(), originalException);
} }
foreach (var index in indexResponse.Indices) foreach (var index in indexResponse.Indices)
@ -85,7 +85,7 @@ public class ExpiredIndicesCleanupJob : IJobRunnable
{ {
delResponse.TryGetOriginalException(out var originalException); delResponse.TryGetOriginalException(out var originalException);
delResponse.TryGetElasticsearchServerError(out var elasticsearchServerError); delResponse.TryGetElasticsearchServerError(out var elasticsearchServerError);
throw new AbpJobExecutionException(GetType(), elasticsearchServerError?.ToString(), originalException); throw new AbpJobExecutionException(GetType(), elasticsearchServerError!.ToString(), originalException);
} }
} }

6
aspnet-core/modules/task-management/LINGYUN.Abp.TaskManagement.Application.Contracts/LINGYUN/Abp/TaskManagement/BackgroundJobDefinitionDto.cs

@ -4,11 +4,11 @@ namespace LINGYUN.Abp.TaskManagement;
public class BackgroundJobDefinitionDto public class BackgroundJobDefinitionDto
{ {
public string Name { get; set; } public string Name { get; set; } = default!;
public string DisplayName { get; set; } public string DisplayName { get; set; } = default!;
public string Description { get; set; } public string? Description { get; set; }
public List<BackgroundJobParamterDto> Paramters { get; set; } = new List<BackgroundJobParamterDto>(); public List<BackgroundJobParamterDto> Paramters { get; set; } = new List<BackgroundJobParamterDto>();
} }

2
aspnet-core/modules/task-management/LINGYUN.Abp.TaskManagement.Application.Contracts/LINGYUN/Abp/TaskManagement/BackgroundJobInfoDto.cs

@ -8,7 +8,7 @@ namespace LINGYUN.Abp.TaskManagement;
public class BackgroundJobInfoDto : ExtensibleAuditedEntityDto<string>, IHasConcurrencyStamp public class BackgroundJobInfoDto : ExtensibleAuditedEntityDto<string>, IHasConcurrencyStamp
{ {
public string ConcurrencyStamp { get; set; } public string ConcurrencyStamp { get; set; } = default!;
/// <summary> /// <summary>
/// 任务名称 /// 任务名称
/// </summary> /// </summary>

6
aspnet-core/modules/webhooks/LINGYUN.Abp.Webhooks.ClientProxies/LINGYUN/Abp/Webhooks/ClientProxies/ClientProxiesWebhookPublisher.cs

@ -20,7 +20,7 @@ public class ClientProxiesWebhookPublisher : IWebhookPublisher, ITransientDepend
PublishAppService = publishAppService; PublishAppService = publishAppService;
} }
public async virtual Task PublishAsync(string webhookName, object data, bool sendExactSameData = false, WebhookHeader headers = null) public async virtual Task PublishAsync(string webhookName, object data, bool sendExactSameData = false, WebhookHeader? headers = null)
{ {
var input = new WebhookPublishInput var input = new WebhookPublishInput
{ {
@ -40,7 +40,7 @@ public class ClientProxiesWebhookPublisher : IWebhookPublisher, ITransientDepend
await PublishAsync(input); await PublishAsync(input);
} }
public async virtual Task PublishAsync(string webhookName, object data, Guid? tenantId, bool sendExactSameData = false, WebhookHeader headers = null) public async virtual Task PublishAsync(string webhookName, object data, Guid? tenantId, bool sendExactSameData = false, WebhookHeader? headers = null)
{ {
var input = new WebhookPublishInput var input = new WebhookPublishInput
{ {
@ -64,7 +64,7 @@ public class ClientProxiesWebhookPublisher : IWebhookPublisher, ITransientDepend
await PublishAsync(input); await PublishAsync(input);
} }
public async virtual Task PublishAsync(Guid?[] tenantIds, string webhookName, object data, bool sendExactSameData = false, WebhookHeader headers = null) public async virtual Task PublishAsync(Guid?[] tenantIds, string webhookName, object data, bool sendExactSameData = false, WebhookHeader? headers = null)
{ {
var input = new WebhookPublishInput var input = new WebhookPublishInput
{ {

8
aspnet-core/modules/webhooks/LINGYUN.Abp.WebhooksManagement.Domain/LINGYUN/Abp/WebhooksManagement/WebhookDefinitionSerializer.cs

@ -50,10 +50,16 @@ public class WebhookDefinitionSerializer : IWebhookDefinitionSerializer, ITransi
{ {
using (CultureHelper.Use(CultureInfo.InvariantCulture)) using (CultureHelper.Use(CultureInfo.InvariantCulture))
{ {
var displayName = webhookGroup.Name;
if (webhookGroup.DisplayName != null)
{
displayName = LocalizableStringSerializer.Serialize(webhookGroup.DisplayName)!;
}
var webhookGroupRecord = new WebhookGroupDefinitionRecord( var webhookGroupRecord = new WebhookGroupDefinitionRecord(
GuidGenerator.Create(), GuidGenerator.Create(),
webhookGroup.Name, webhookGroup.Name,
LocalizableStringSerializer.Serialize(webhookGroup.DisplayName)! displayName
); );
foreach (var property in webhookGroup.Properties) foreach (var property in webhookGroup.Properties)

2
aspnet-core/services/LY.MicroService.Applications.Single/GlobalUsings.cs

@ -135,8 +135,6 @@ global using LINGYUN.Platform;
global using LINGYUN.Platform.EntityFrameworkCore; global using LINGYUN.Platform.EntityFrameworkCore;
global using LINGYUN.Platform.HttpApi; global using LINGYUN.Platform.HttpApi;
global using LINGYUN.Platform.Localization; global using LINGYUN.Platform.Localization;
global using LINGYUN.Platform.Settings.VueVbenAdmin;
global using LINGYUN.Platform.Theme.VueVbenAdmin;
global using LY.MicroService.Applications.Single.Bundling; global using LY.MicroService.Applications.Single.Bundling;
global using LY.MicroService.Applications.Single.EntityFrameworkCore.MySql; global using LY.MicroService.Applications.Single.EntityFrameworkCore.MySql;
global using LY.MicroService.Applications.Single.EntityFrameworkCore.PostgreSql; global using LY.MicroService.Applications.Single.EntityFrameworkCore.PostgreSql;

1
aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/LY.MicroService.RealtimeMessage.HttpApi.Host.csproj

@ -85,7 +85,6 @@
<ProjectReference Include="..\..\modules\realtime-notifications\LINGYUN.Abp.Notifications.WxPusher\LINGYUN.Abp.Notifications.WxPusher.csproj" /> <ProjectReference Include="..\..\modules\realtime-notifications\LINGYUN.Abp.Notifications.WxPusher\LINGYUN.Abp.Notifications.WxPusher.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.ExceptionHandling\LINGYUN.Abp.BackgroundTasks.ExceptionHandling.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.Notifications.Jobs\LINGYUN.Abp.Notifications.Jobs.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.Notifications.Jobs\LINGYUN.Abp.Notifications.Jobs.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.TaskManagement.EntityFrameworkCore\LINGYUN.Abp.TaskManagement.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.TaskManagement.EntityFrameworkCore\LINGYUN.Abp.TaskManagement.EntityFrameworkCore.csproj" />
<ProjectReference Include="..\..\modules\localization-management\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\modules\localization-management\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore.csproj" />

2
aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/RealtimeMessageHttpApiHostModule.cs

@ -3,7 +3,6 @@ using LINGYUN.Abp.AspNetCore.Mvc.Wrapper;
using LINGYUN.Abp.AuditLogging.Elasticsearch; using LINGYUN.Abp.AuditLogging.Elasticsearch;
using LINGYUN.Abp.Authorization.OrganizationUnits; using LINGYUN.Abp.Authorization.OrganizationUnits;
using LINGYUN.Abp.BackgroundTasks.DistributedLocking; using LINGYUN.Abp.BackgroundTasks.DistributedLocking;
using LINGYUN.Abp.BackgroundTasks.ExceptionHandling;
using LINGYUN.Abp.BackgroundTasks.Quartz; using LINGYUN.Abp.BackgroundTasks.Quartz;
using LINGYUN.Abp.Claims.Mapping; using LINGYUN.Abp.Claims.Mapping;
using LINGYUN.Abp.Data.DbMigrator; using LINGYUN.Abp.Data.DbMigrator;
@ -79,7 +78,6 @@ namespace LY.MicroService.RealtimeMessage;
typeof(AbpIdentityWeChatWorkModule), typeof(AbpIdentityWeChatWorkModule),
typeof(AbpBackgroundTasksQuartzModule), typeof(AbpBackgroundTasksQuartzModule),
typeof(AbpBackgroundTasksDistributedLockingModule), typeof(AbpBackgroundTasksDistributedLockingModule),
typeof(AbpBackgroundTasksExceptionHandlingModule),
typeof(TaskManagementEntityFrameworkCoreModule), typeof(TaskManagementEntityFrameworkCoreModule),
typeof(AbpMessageServiceEntityFrameworkCoreModule), typeof(AbpMessageServiceEntityFrameworkCoreModule),
typeof(AbpNotificationsEntityFrameworkCoreModule), typeof(AbpNotificationsEntityFrameworkCoreModule),

1
aspnet-core/services/LY.MicroService.TaskManagement.HttpApi.Host/LY.MicroService.TaskManagement.HttpApi.Host.csproj

@ -62,7 +62,6 @@
<ProjectReference Include="..\..\modules\platform\LINGYUN.Abp.Emailing.Platform\LINGYUN.Abp.Emailing.Platform.csproj" /> <ProjectReference Include="..\..\modules\platform\LINGYUN.Abp.Emailing.Platform\LINGYUN.Abp.Emailing.Platform.csproj" />
<ProjectReference Include="..\..\modules\platform\LINGYUN.Abp.Sms.Platform\LINGYUN.Abp.Sms.Platform.csproj" /> <ProjectReference Include="..\..\modules\platform\LINGYUN.Abp.Sms.Platform\LINGYUN.Abp.Sms.Platform.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.ExceptionHandling\LINGYUN.Abp.BackgroundTasks.ExceptionHandling.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Jobs\LINGYUN.Abp.BackgroundTasks.Jobs.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Jobs\LINGYUN.Abp.BackgroundTasks.Jobs.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Notifications\LINGYUN.Abp.BackgroundTasks.Notifications.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Notifications\LINGYUN.Abp.BackgroundTasks.Notifications.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" />

2
aspnet-core/services/LY.MicroService.TaskManagement.HttpApi.Host/TaskManagementHttpApiHostModule.cs

@ -3,7 +3,6 @@ using LINGYUN.Abp.AspNetCore.Mvc.Wrapper;
using LINGYUN.Abp.AuditLogging.Elasticsearch; using LINGYUN.Abp.AuditLogging.Elasticsearch;
using LINGYUN.Abp.Authorization.OrganizationUnits; using LINGYUN.Abp.Authorization.OrganizationUnits;
using LINGYUN.Abp.BackgroundTasks.DistributedLocking; using LINGYUN.Abp.BackgroundTasks.DistributedLocking;
using LINGYUN.Abp.BackgroundTasks.ExceptionHandling;
using LINGYUN.Abp.BackgroundTasks.Jobs; using LINGYUN.Abp.BackgroundTasks.Jobs;
using LINGYUN.Abp.BackgroundTasks.Notifications; using LINGYUN.Abp.BackgroundTasks.Notifications;
using LINGYUN.Abp.BackgroundTasks.Quartz; using LINGYUN.Abp.BackgroundTasks.Quartz;
@ -63,7 +62,6 @@ namespace LY.MicroService.TaskManagement;
typeof(AbpBackgroundTasksJobsModule), typeof(AbpBackgroundTasksJobsModule),
typeof(AbpBackgroundTasksQuartzModule), typeof(AbpBackgroundTasksQuartzModule),
typeof(AbpBackgroundTasksDistributedLockingModule), typeof(AbpBackgroundTasksDistributedLockingModule),
typeof(AbpBackgroundTasksExceptionHandlingModule),
typeof(AbpBackgroundTasksNotificationsModule), typeof(AbpBackgroundTasksNotificationsModule),
typeof(AbpElasticsearchJobsModule), typeof(AbpElasticsearchJobsModule),
typeof(AbpIdentityJobsModule), typeof(AbpIdentityJobsModule),

1
aspnet-core/services/LY.MicroService.WebhooksManagement.HttpApi.Host/LY.MicroService.WebhooksManagement.HttpApi.Host.csproj

@ -68,7 +68,6 @@
<ProjectReference Include="..\..\modules\webhooks\LINGYUN.Abp.WebhooksManagement.HttpApi\LINGYUN.Abp.WebhooksManagement.HttpApi.csproj" /> <ProjectReference Include="..\..\modules\webhooks\LINGYUN.Abp.WebhooksManagement.HttpApi\LINGYUN.Abp.WebhooksManagement.HttpApi.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.ExceptionHandling\LINGYUN.Abp.BackgroundTasks.ExceptionHandling.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.TaskManagement.EntityFrameworkCore\LINGYUN.Abp.TaskManagement.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.TaskManagement.EntityFrameworkCore\LINGYUN.Abp.TaskManagement.EntityFrameworkCore.csproj" />
<ProjectReference Include="..\..\modules\localization-management\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\modules\localization-management\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore.csproj" />
</ItemGroup> </ItemGroup>

2
aspnet-core/services/LY.MicroService.WebhooksManagement.HttpApi.Host/WebhooksManagementHttpApiHostModule.cs

@ -3,7 +3,6 @@ using LINGYUN.Abp.AspNetCore.Mvc.Wrapper;
using LINGYUN.Abp.AuditLogging.Elasticsearch; using LINGYUN.Abp.AuditLogging.Elasticsearch;
using LINGYUN.Abp.Authorization.OrganizationUnits; using LINGYUN.Abp.Authorization.OrganizationUnits;
using LINGYUN.Abp.BackgroundTasks.DistributedLocking; using LINGYUN.Abp.BackgroundTasks.DistributedLocking;
using LINGYUN.Abp.BackgroundTasks.ExceptionHandling;
using LINGYUN.Abp.BackgroundTasks.Quartz; using LINGYUN.Abp.BackgroundTasks.Quartz;
using LINGYUN.Abp.Claims.Mapping; using LINGYUN.Abp.Claims.Mapping;
using LINGYUN.Abp.Dapr.Client.Wrapper; using LINGYUN.Abp.Dapr.Client.Wrapper;
@ -60,7 +59,6 @@ namespace LY.MicroService.WebhooksManagement;
typeof(AbpWebhooksEventBusModule), typeof(AbpWebhooksEventBusModule),
typeof(AbpBackgroundTasksQuartzModule), typeof(AbpBackgroundTasksQuartzModule),
typeof(AbpBackgroundTasksDistributedLockingModule), typeof(AbpBackgroundTasksDistributedLockingModule),
typeof(AbpBackgroundTasksExceptionHandlingModule),
typeof(AbpQuartzMySqlInstallerModule), typeof(AbpQuartzMySqlInstallerModule),
typeof(TaskManagementEntityFrameworkCoreModule), typeof(TaskManagementEntityFrameworkCoreModule),
typeof(AbpSaasEntityFrameworkCoreModule), typeof(AbpSaasEntityFrameworkCoreModule),

1
aspnet-core/services/LY.MicroService.WorkflowManagement.HttpApi.Host/LY.MicroService.WorkflowManagement.HttpApi.Host.csproj

@ -74,7 +74,6 @@
<ProjectReference Include="..\..\modules\localization-management\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\modules\localization-management\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.BackgroundTasks.ExceptionHandling\LINGYUN.Abp.BackgroundTasks.ExceptionHandling.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.Quartz.MySqlInstaller\LINGYUN.Abp.Quartz.MySqlInstaller.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.Quartz.MySqlInstaller\LINGYUN.Abp.Quartz.MySqlInstaller.csproj" />
<ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.TaskManagement.EntityFrameworkCore\LINGYUN.Abp.TaskManagement.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\modules\task-management\LINGYUN.Abp.TaskManagement.EntityFrameworkCore\LINGYUN.Abp.TaskManagement.EntityFrameworkCore.csproj" />
<ProjectReference Include="..\..\modules\text-templating\LINGYUN.Abp.TextTemplating.EntityFrameworkCore\LINGYUN.Abp.TextTemplating.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\modules\text-templating\LINGYUN.Abp.TextTemplating.EntityFrameworkCore\LINGYUN.Abp.TextTemplating.EntityFrameworkCore.csproj" />

2
aspnet-core/services/LY.MicroService.WorkflowManagement.HttpApi.Host/WorkflowManagementHttpApiHostModule.cs

@ -3,7 +3,6 @@ using LINGYUN.Abp.AspNetCore.Mvc.Wrapper;
using LINGYUN.Abp.AuditLogging.Elasticsearch; using LINGYUN.Abp.AuditLogging.Elasticsearch;
using LINGYUN.Abp.Authorization.OrganizationUnits; using LINGYUN.Abp.Authorization.OrganizationUnits;
using LINGYUN.Abp.BackgroundTasks.DistributedLocking; using LINGYUN.Abp.BackgroundTasks.DistributedLocking;
using LINGYUN.Abp.BackgroundTasks.ExceptionHandling;
using LINGYUN.Abp.BackgroundTasks.Quartz; using LINGYUN.Abp.BackgroundTasks.Quartz;
using LINGYUN.Abp.BlobStoring.BlobManagement; using LINGYUN.Abp.BlobStoring.BlobManagement;
using LINGYUN.Abp.Claims.Mapping; using LINGYUN.Abp.Claims.Mapping;
@ -63,7 +62,6 @@ namespace LY.MicroService.WorkflowManagement;
typeof(AbpAspNetCoreMultiTenancyModule), typeof(AbpAspNetCoreMultiTenancyModule),
typeof(AbpBackgroundTasksQuartzModule), typeof(AbpBackgroundTasksQuartzModule),
typeof(AbpBackgroundTasksDistributedLockingModule), typeof(AbpBackgroundTasksDistributedLockingModule),
typeof(AbpBackgroundTasksExceptionHandlingModule),
typeof(AbpQuartzMySqlInstallerModule), typeof(AbpQuartzMySqlInstallerModule),
typeof(TaskManagementEntityFrameworkCoreModule), typeof(TaskManagementEntityFrameworkCoreModule),
typeof(AbpFeatureManagementEntityFrameworkCoreModule), typeof(AbpFeatureManagementEntityFrameworkCoreModule),

Loading…
Cancel
Save