diff --git a/modules/payment/src/Payment.Admin.Application/Payment.Admin.Application.csproj b/modules/payment/src/Payment.Admin.Application/Payment.Admin.Application.csproj
index e0f46ef..9a0f5f8 100644
--- a/modules/payment/src/Payment.Admin.Application/Payment.Admin.Application.csproj
+++ b/modules/payment/src/Payment.Admin.Application/Payment.Admin.Application.csproj
@@ -4,12 +4,12 @@
- netstandard2.0
+ net6.0
Payment.Admin
-
+
diff --git a/modules/payment/src/Payment.Admin.Blazor/Pages/Payment/Requests/Index.razor.cs b/modules/payment/src/Payment.Admin.Blazor/Pages/Payment/Requests/Index.razor.cs
index b30ef9d..7ae4bd6 100644
--- a/modules/payment/src/Payment.Admin.Blazor/Pages/Payment/Requests/Index.razor.cs
+++ b/modules/payment/src/Payment.Admin.Blazor/Pages/Payment/Requests/Index.razor.cs
@@ -63,7 +63,7 @@ namespace Payment.Admin.Pages.Payment.Requests
protected virtual async Task OnDataGridReadAsync(DataGridReadDataEventArgs e)
{
CurrentSorting = e.Columns
- .Where(c => c.SortDirection != SortDirection.None)
+ .Where(c => c.SortDirection != SortDirection.Default)
.Select(c => c.Field + (c.SortDirection == SortDirection.Descending ? " DESC" : ""))
.JoinAsString(",");
diff --git a/modules/payment/src/Payment.Application/Payment.Application.csproj b/modules/payment/src/Payment.Application/Payment.Application.csproj
index dd41dcc..92d9659 100644
--- a/modules/payment/src/Payment.Application/Payment.Application.csproj
+++ b/modules/payment/src/Payment.Application/Payment.Application.csproj
@@ -4,12 +4,12 @@
- netstandard2.0
+ net6.0
Payment
-
+
diff --git a/src/EventHub.Domain.Shared/Assemblies/AssemblyInfoHelper.cs b/src/EventHub.Domain.Shared/Assemblies/AssemblyInfoHelper.cs
new file mode 100644
index 0000000..33e5f0b
--- /dev/null
+++ b/src/EventHub.Domain.Shared/Assemblies/AssemblyInfoHelper.cs
@@ -0,0 +1,58 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Reflection;
+using System.Threading;
+using Volo.Abp;
+
+namespace EventHub;
+
+public static class AssemblyInfoHelper
+{
+ private const string AssemblyInfoCacheKey = "AssemblyInfoCacheKey";
+ private readonly static Dictionary AssemblyInfoCache = new();
+
+ public static AssemblyInfo Get()
+ {
+ if (AssemblyInfoCache.TryGetValue(AssemblyInfoCacheKey, out var assemblyInfo))
+ {
+ return assemblyInfo;
+ }
+
+ var abpCorePackageVersion = GetAbpCorePackageVersion();
+ var applicationAssembly = Assembly.GetEntryAssembly();
+ var applicationVersion = applicationAssembly?.GetFileVersion();
+ var modificationDate = applicationAssembly?.Location == null ? DateTime.Now : File.GetLastWriteTime(applicationAssembly.Location);
+
+ assemblyInfo = new AssemblyInfo(abpCorePackageVersion, applicationVersion, modificationDate);
+
+ AssemblyInfoCache[AssemblyInfoCacheKey] = assemblyInfo;
+
+ return assemblyInfo;
+ }
+
+ private static string GetAbpCorePackageVersion()
+ {
+ var abpCoreAssembly = Assembly.GetAssembly(typeof(AbpApplicationBase));
+
+ return abpCoreAssembly == null
+ ? string.Empty
+ : abpCoreAssembly.GetFileVersion();
+ }
+
+ public class AssemblyInfo
+ {
+ public string AbpCoreVersion { get; }
+
+ public string Version { get; }
+
+ public DateTime ModificationDate { get; }
+
+ public AssemblyInfo(string abpCoreVersion, string version, DateTime modificationDate)
+ {
+ AbpCoreVersion = abpCoreVersion;
+ Version = version;
+ ModificationDate = modificationDate;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/EventHub.HttpApi.Host/Assemblies/VersionApplicationConfigurationContributor.cs b/src/EventHub.HttpApi.Host/Assemblies/VersionApplicationConfigurationContributor.cs
new file mode 100644
index 0000000..847a1fe
--- /dev/null
+++ b/src/EventHub.HttpApi.Host/Assemblies/VersionApplicationConfigurationContributor.cs
@@ -0,0 +1,20 @@
+using System.Threading.Tasks;
+using EventHub;
+using Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations;
+using Volo.Abp.Data;
+
+public class VersionApplicationConfigurationContributor : IApplicationConfigurationContributor
+{
+ public Task ContributeAsync(ApplicationConfigurationContributorContext context)
+ {
+ var assemblyInfo = AssemblyInfoHelper.Get();
+ context.ApplicationConfiguration.SetProperty("versions", new
+ {
+ abp = assemblyInfo.AbpCoreVersion,
+ application = assemblyInfo.Version,
+ applicationCompileDate = assemblyInfo.ModificationDate
+ });
+
+ return Task.CompletedTask;
+ }
+}
\ No newline at end of file
diff --git a/src/EventHub.HttpApi.Host/EventHubHttpApiHostModule.cs b/src/EventHub.HttpApi.Host/EventHubHttpApiHostModule.cs
index 46dd615..c48a191 100644
--- a/src/EventHub.HttpApi.Host/EventHubHttpApiHostModule.cs
+++ b/src/EventHub.HttpApi.Host/EventHubHttpApiHostModule.cs
@@ -22,6 +22,7 @@ using Microsoft.OpenApi.Models;
using StackExchange.Redis;
using Volo.Abp;
using Volo.Abp.AspNetCore.Mvc;
+using Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations;
using Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic;
using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared;
using Volo.Abp.AspNetCore.Serilog;
@@ -67,6 +68,11 @@ namespace EventHub
ConfigureAutoApiControllers();
ConfigureTiming();
ConfigurePremiumPlanInfo(context, configuration);
+
+ Configure(options =>
+ {
+ options.Contributors.AddIfNotContains(new VersionApplicationConfigurationContributor());
+ });
}
private void ConfigureAutoApiControllers()
diff --git a/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml b/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml
index d9816d7..2b7ba88 100644
--- a/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml
+++ b/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml
@@ -8,6 +8,7 @@
@inject IOptions UrlOptions
@{
var currentPageUrl = Context.Request.GetDisplayUrl();
+ var platformVersion = EventHub.AssemblyInfoHelper.Get();
}