diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Components/AppInitializer.cs b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Components/AppInitializer.cs
index c22f834ac3..3becead072 100644
--- a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Components/AppInitializer.cs
+++ b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Components/AppInitializer.cs
@@ -102,7 +102,7 @@ private async Task ConnectSignalR()
hubConnection = new HubConnectionBuilder()
.WithAutomaticReconnect()
- .WithUrl($"{Configuration.GetServerAddress()}/app-hub?access_token={access_token}", options =>
+ .WithUrl($"{HttpClient.BaseAddress}app-hub?access_token={access_token}", options =>
{
options.Transports = Microsoft.AspNetCore.Http.Connections.HttpTransportType.WebSockets;
// Avoid enabling long polling or Server-Sent Events. Focus on resolving the issue with WebSockets instead.
diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20240729183448_InitialMigration.Designer.cs b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20240729183448_InitialMigration.Designer.cs
deleted file mode 100644
index 5738ce8a4f..0000000000
--- a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20240729183448_InitialMigration.Designer.cs
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-using System;
-using Boilerplate.Client.Core.Data;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Infrastructure;
-using Microsoft.EntityFrameworkCore.Migrations;
-using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
-
-#nullable disable
-
-namespace Boilerplate.Client.Core.Data.Migrations
-{
- [DbContext(typeof(OfflineDbContext))]
- [Migration("20240729183448_InitialMigration")]
- partial class InitialMigration
- {
- ///
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder.HasAnnotation("ProductVersion", "8.0.7");
-
- modelBuilder.Entity("Boilerplate.Shared.Dtos.Identity.UserDto", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("TEXT");
-
- b.Property("BirthDate")
- .HasColumnType("INTEGER");
-
- b.Property("Email")
- .HasColumnType("TEXT");
-
- b.Property("FullName")
- .IsRequired()
- .HasColumnType("TEXT");
-
- b.Property("Gender")
- .HasColumnType("INTEGER");
-
- b.Property("Password")
- .IsRequired()
- .HasColumnType("TEXT");
-
- b.Property("PhoneNumber")
- .HasColumnType("TEXT");
-
- b.Property("ProfileImageName")
- .HasColumnType("TEXT");
-
- b.Property("UserName")
- .IsRequired()
- .HasColumnType("TEXT");
-
- b.HasKey("Id");
-
- b.ToTable("Users");
-
- b.HasData(
- new
- {
- Id = new Guid("8ff71671-a1d6-4f97-abb9-d87d7b47d6e7"),
- BirthDate = 1306790461440000000L,
- Email = "test@bitplatform.dev",
- FullName = "Boilerplate test account",
- Gender = 2,
- Password = "123456",
- PhoneNumber = "+31684207362",
- UserName = "test"
- });
- });
-#pragma warning restore 612, 618
- }
- }
-}
diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20241030140343_InitialMigration.Designer.cs b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20241030140343_InitialMigration.Designer.cs
new file mode 100644
index 0000000000..27ff3c7e8a
--- /dev/null
+++ b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20241030140343_InitialMigration.Designer.cs
@@ -0,0 +1,72 @@
+//
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace Boilerplate.Client.Core.Data.Migrations;
+
+[DbContext(typeof(OfflineDbContext))]
+[Migration("20241030140343_InitialMigration")]
+partial class InitialMigration
+{
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder.HasAnnotation("ProductVersion", "9.0.0");
+
+ modelBuilder.Entity("Boilerplate.Shared.Dtos.Identity.UserDto", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("TEXT");
+
+ b.Property("BirthDate")
+ .HasColumnType("INTEGER");
+
+ b.Property("Email")
+ .HasColumnType("TEXT");
+
+ b.Property("FullName")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("Gender")
+ .HasColumnType("INTEGER");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("PhoneNumber")
+ .HasColumnType("TEXT");
+
+ b.Property("ProfileImageName")
+ .HasColumnType("TEXT");
+
+ b.Property("UserName")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.HasKey("Id");
+
+ b.ToTable("Users");
+
+ b.HasData(
+ new
+ {
+ Id = new Guid("8ff71671-a1d6-4f97-abb9-d87d7b47d6e7"),
+ BirthDate = 1306790461440000000L,
+ Email = "test@bitplatform.dev",
+ FullName = "Boilerplate test account",
+ Gender = 0,
+ Password = "123456",
+ PhoneNumber = "+31684207362",
+ UserName = "test"
+ });
+ });
+#pragma warning restore 612, 618
+ }
+}
diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20240729183448_InitialMigration.cs b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20241030140343_InitialMigration.cs
similarity index 96%
rename from src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20240729183448_InitialMigration.cs
rename to src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20241030140343_InitialMigration.cs
index a62a7b6db8..d859fcd8ef 100644
--- a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20240729183448_InitialMigration.cs
+++ b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/20241030140343_InitialMigration.cs
@@ -33,7 +33,7 @@ protected override void Up(MigrationBuilder migrationBuilder)
migrationBuilder.InsertData(
table: "Users",
columns: new[] { "Id", "BirthDate", "Email", "FullName", "Gender", "Password", "PhoneNumber", "ProfileImageName", "UserName" },
- values: new object[] { new Guid("8ff71671-a1d6-4f97-abb9-d87d7b47d6e7"), 1306790461440000000L, "test@bitplatform.dev", "Boilerplate test account", 2, "123456", "+31684207362", null, "test" });
+ values: new object[] { new Guid("8ff71671-a1d6-4f97-abb9-d87d7b47d6e7"), 1306790461440000000L, "test@bitplatform.dev", "Boilerplate test account", 0, "123456", "+31684207362", null, "test" });
}
///
diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/OfflineDbContextModelSnapshot.cs b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/OfflineDbContextModelSnapshot.cs
index 23b5541582..f277e593fa 100644
--- a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/OfflineDbContextModelSnapshot.cs
+++ b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Data/Migrations/OfflineDbContextModelSnapshot.cs
@@ -12,7 +12,7 @@ partial class OfflineDbContextModelSnapshot : ModelSnapshot
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
- modelBuilder.HasAnnotation("ProductVersion", "8.0.7");
+ modelBuilder.HasAnnotation("ProductVersion", "9.0.0");
modelBuilder.Entity("Boilerplate.Shared.Dtos.Identity.UserDto", b =>
{
@@ -58,7 +58,7 @@ protected override void BuildModel(ModelBuilder modelBuilder)
BirthDate = 1306790461440000000L,
Email = "test@bitplatform.dev",
FullName = "Boilerplate test account",
- Gender = 2,
+ Gender = 0,
Password = "123456",
PhoneNumber = "+31684207362",
UserName = "test"
diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Services/ExceptionHandlerBase.cs b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Services/ExceptionHandlerBase.cs
index 41d0fedab9..ce80ffe334 100644
--- a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Services/ExceptionHandlerBase.cs
+++ b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Services/ExceptionHandlerBase.cs
@@ -50,19 +50,28 @@ protected virtual void Handle(Exception exception, Dictionary pa
{
var isDevEnv = AppEnvironment.IsDev();
- string exceptionMessage = (exception as KnownException)?.Message ??
+ using (var scope = Logger.BeginScope(parameters.ToDictionary(i => i.Key, i => i.Value ?? string.Empty)))
+ {
+ var exceptionMessage = exception.Message;
+ var innerException = exception.InnerException;
+
+ while (innerException is not null)
+ {
+ exceptionMessage += $"{Environment.NewLine}{innerException.Message}";
+ innerException = innerException.InnerException;
+ }
+
+ Logger.LogError(exception, exceptionMessage);
+ }
+
+ string displayableExceptionMessage = (exception as KnownException)?.Message ??
(isDevEnv ? exception.ToString() : Localizer[nameof(AppStrings.UnknownException)]);
+ MessageBoxService.Show(displayableExceptionMessage, Localizer[nameof(AppStrings.Error)]);
+
if (isDevEnv)
{
Debugger.Break();
}
-
- using (var scope = Logger.BeginScope(parameters.ToDictionary(i => i.Key, i => i.Value ?? string.Empty)))
- {
- Logger.LogError(exception, exceptionMessage);
- }
-
- MessageBoxService.Show(exceptionMessage, Localizer[nameof(AppStrings.Error)]);
}
}
diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Boilerplate.Client.Maui.csproj b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Boilerplate.Client.Maui.csproj
index 6ef81971ce..d123ca41ea 100644
--- a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Boilerplate.Client.Maui.csproj
+++ b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Boilerplate.Client.Maui.csproj
@@ -30,7 +30,6 @@
BeforeBuildTasks;
$(ResolveStaticWebAssetsInputsDependsOn)
- false
diff --git a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/appsettings.json b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/appsettings.json
index 5ce72aad16..5fe62e7f93 100644
--- a/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/appsettings.json
+++ b/src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/appsettings.json
@@ -2,7 +2,7 @@
"WebAppRender": {
"PrerenderEnabled": false,
"BlazorMode": "BlazorServer",
- "BlazorMode_Comment": "Default value of Client.Core/appsettings.Production.json is BlazorAuto"
+ "BlazorMode_Comment": "BlazorServer, BlazorWebAssembly and BlazorAuto. Default value of Client.Core/appsettings.Production.json is BlazorAuto"
},
//#if (notification == true)
"AdsPushVapid_Comment": "https://github.com/adessoTurkey-dotNET/AdsPush",