Skip to content

Application Layer refactor #544

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 44 commits into from
Nov 12, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
375c105
fluxor moved to Blazor.Server.UI, services implementations removed fr…
MatteoZampariniDev Oct 18, 2023
fe96f24
Application nugets cleaned, Settings injection moved to Application DI
MatteoZampariniDev Oct 18, 2023
cb0e43d
Configuration settings moved to Infrastructure
MatteoZampariniDev Oct 18, 2023
dc19a6c
Merge pull request #1 from MatteoZampariniDev/main
MatteoZampariniDev Oct 18, 2023
328c383
Constants moved from Application to Infrastructure
MatteoZampariniDev Oct 18, 2023
ef09758
Middlewares moved to Server.UI
MatteoZampariniDev Oct 18, 2023
2f4f2e8
ConfigureServer method added
MatteoZampariniDev Oct 18, 2023
3d06dbc
Service injection refactor progress
MatteoZampariniDev Oct 18, 2023
c3fc8cb
DI and configuration refactored
MatteoZampariniDev Oct 18, 2023
498f179
Infrastucture nugets cleaned
MatteoZampariniDev Oct 18, 2023
b9513f4
SignalR hubs moved to Server
MatteoZampariniDev Oct 19, 2023
23e6613
Infrastructure nugets cleaned
MatteoZampariniDev Oct 19, 2023
eaedf0d
Blazor.Server.UI project renamed to Server.UI
MatteoZampariniDev Oct 19, 2023
708ed03
Server project added
MatteoZampariniDev Oct 19, 2023
b7ef4a2
✨ clean code for IdentityService
neozhu Oct 19, 2023
1515c10
✨ add VaildationPreProcessor instead of VaildationBehaviour
neozhu Oct 20, 2023
283fc24
🐛 fix table column alignment
neozhu Oct 20, 2023
4041e16
Merge branch 'architecture-refactor' of https://github.com/MatteoZamp…
MatteoZampariniDev Oct 20, 2023
27de6fa
Server logic moved to Server project from Server.UI
MatteoZampariniDev Oct 20, 2023
d34878a
Server.UI Shared folder moved to Components, added "code behind" for …
MatteoZampariniDev Oct 20, 2023
a07261e
razor pages/components refactor, code cleanup, code behind removed
MatteoZampariniDev Oct 20, 2023
52683e7
code cleanup
MatteoZampariniDev Oct 20, 2023
336e59a
Merge conflicts resolved
MatteoZampariniDev Oct 22, 2023
2a231c7
Merge conflicts errors solved
MatteoZampariniDev Oct 22, 2023
89c63d5
Docker fix
MatteoZampariniDev Oct 22, 2023
da0fb8e
docker fix
MatteoZampariniDev Oct 22, 2023
5b046f7
Behaviours moved to Pipeline folder
MatteoZampariniDev Oct 22, 2023
ca41b55
Domain folder structure refactored
MatteoZampariniDev Oct 22, 2023
7ccb5d9
✨ clear csproj
neozhu Oct 23, 2023
69cc12f
🐛 fix namespace
neozhu Oct 23, 2023
90b52b0
✨ refactoring code for Task
neozhu Oct 24, 2023
9c7fa41
validation extensions refactored
MatteoZampariniDev Oct 24, 2023
2d4f028
✨ refactoring AccessTokenProvider
neozhu Oct 24, 2023
4586389
✨ add RefreshToken(string refreshToken) method
neozhu Oct 25, 2023
6cbc793
✨ add RefreshTokenValidator
neozhu Oct 25, 2023
49f2be3
Update ProductCacheKey.cs
neozhu Oct 25, 2023
406dc31
✨ code refactoring jwt token authenticator
neozhu Oct 26, 2023
46d6e4a
✨ code refactoring jwt token authenticator
neozhu Oct 26, 2023
dff9a88
Namespace updated
MatteoZampariniDev Oct 27, 2023
4569435
Reset Password logic moved to Application
MatteoZampariniDev Oct 28, 2023
7030add
✨ refactoring login function
neozhu Nov 11, 2023
1928c5a
✨ code refactoring for domain project structure
neozhu Nov 11, 2023
e714293
🚀 testing adapt to code generator
neozhu Nov 11, 2023
3caeedc
🌈 Upgrade the libraries to the latest version
neozhu Nov 11, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -356,4 +356,4 @@ MigrationBackup/


**/Files/
src/Blazor.Server.UI/appsettings.development.json
src/Server.UI/appsettings.development.json
2 changes: 1 addition & 1 deletion .template.config/template.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
"*.nupkg",
"launchSettings.json",
"*.exe",
"src/Blazor.Server.UI/Files/**"
"src/Server.UI/Files/**"
]
}
]
Expand Down
4 changes: 2 additions & 2 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
"request": "launch",
"preLaunchTask": "build",
// If you have changed target frameworks, make sure to update the program path.
"program": "${workspaceFolder}/src/Blazor.Server.UI/bin/Debug/net6.0/Blazor.Server.UI.dll",
"program": "${workspaceFolder}/src/Server.UI/bin/Debug/net6.0/CleanArchitecture.Blazor.Server.UI.dll",
"args": [],
"cwd": "${workspaceFolder}/src/Blazor.Server.UI",
"cwd": "${workspaceFolder}/src/Server.UI",
"stopAtEntry": false,
// Enable launching a web browser when ASP.NET Core starts. For more information: https://aka.ms/VSCode-CS-LaunchJson-WebBrowser
"serverReadyAction": {
Expand Down
6 changes: 3 additions & 3 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"type": "process",
"args": [
"build",
"${workspaceFolder}/src/Blazor.Server.UI/Blazor.Server.UI.csproj",
"${workspaceFolder}/src/Server.UI/Server.UI.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
Expand All @@ -19,7 +19,7 @@
"type": "process",
"args": [
"publish",
"${workspaceFolder}/src/Blazor.Server.UI/Blazor.Server.UI.csproj",
"${workspaceFolder}/src/Server.UI/Server.UI.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
Expand All @@ -33,7 +33,7 @@
"watch",
"run",
"--project",
"${workspaceFolder}/src/Blazor.Server.UI/Blazor.Server.UI.csproj"
"${workspaceFolder}/src/Server.UI/Server.UI.csproj"
],
"problemMatcher": "$msCompile"
}
Expand Down
21 changes: 14 additions & 7 deletions CleanArchitecture.Blazor.sln
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Domain", "src\Domain\Domain
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Infrastructure", "src\Infrastructure\Infrastructure.csproj", "{D5A42BE7-D229-4746-9D2A-AC878F79DBED}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Blazor.Server.UI", "src\Blazor.Server.UI\Blazor.Server.UI.csproj", "{66AFF428-DE0D-4F7A-B5D4-B321DE267A15}"
EndProject
Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose.dcproj", "{6BD2EC46-FA8F-44F3-AF33-903BBB347116}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Application.IntegrationTests", "tests\Application.IntegrationTests\Application.IntegrationTests.csproj", "{4AF55920-007C-411D-8AD3-6F9D2C722450}"
Expand All @@ -40,6 +38,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Migrators.PostgreSQL", "src
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Migrators.SqLite", "src\Migrators\Migrators.SqLite\Migrators.SqLite.csproj", "{469D68F1-379E-46A6-AAC3-CD1E4C0E7D77}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Server.UI", "src\Server.UI\Server.UI.csproj", "{3E4AF4E5-02EE-4F26-9B6D-8723670172B3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Server", "src\Server\Server.csproj", "{E5008BA6-6358-413C-A082-AF14115EF18B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand All @@ -58,10 +60,6 @@ Global
{D5A42BE7-D229-4746-9D2A-AC878F79DBED}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D5A42BE7-D229-4746-9D2A-AC878F79DBED}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D5A42BE7-D229-4746-9D2A-AC878F79DBED}.Release|Any CPU.Build.0 = Release|Any CPU
{66AFF428-DE0D-4F7A-B5D4-B321DE267A15}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{66AFF428-DE0D-4F7A-B5D4-B321DE267A15}.Debug|Any CPU.Build.0 = Debug|Any CPU
{66AFF428-DE0D-4F7A-B5D4-B321DE267A15}.Release|Any CPU.ActiveCfg = Release|Any CPU
{66AFF428-DE0D-4F7A-B5D4-B321DE267A15}.Release|Any CPU.Build.0 = Release|Any CPU
{6BD2EC46-FA8F-44F3-AF33-903BBB347116}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6BD2EC46-FA8F-44F3-AF33-903BBB347116}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6BD2EC46-FA8F-44F3-AF33-903BBB347116}.Release|Any CPU.ActiveCfg = Release|Any CPU
Expand Down Expand Up @@ -90,6 +88,14 @@ Global
{469D68F1-379E-46A6-AAC3-CD1E4C0E7D77}.Debug|Any CPU.Build.0 = Debug|Any CPU
{469D68F1-379E-46A6-AAC3-CD1E4C0E7D77}.Release|Any CPU.ActiveCfg = Release|Any CPU
{469D68F1-379E-46A6-AAC3-CD1E4C0E7D77}.Release|Any CPU.Build.0 = Release|Any CPU
{3E4AF4E5-02EE-4F26-9B6D-8723670172B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3E4AF4E5-02EE-4F26-9B6D-8723670172B3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3E4AF4E5-02EE-4F26-9B6D-8723670172B3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3E4AF4E5-02EE-4F26-9B6D-8723670172B3}.Release|Any CPU.Build.0 = Release|Any CPU
{E5008BA6-6358-413C-A082-AF14115EF18B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E5008BA6-6358-413C-A082-AF14115EF18B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E5008BA6-6358-413C-A082-AF14115EF18B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E5008BA6-6358-413C-A082-AF14115EF18B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand All @@ -98,14 +104,15 @@ Global
{196FC2C6-2817-494B-AB9D-26F9DD33247A} = {21DC0B96-ED87-4130-BA8D-E8CF73903344}
{AAD8A88D-2BBE-4C6E-A4CA-02D9005BF3DF} = {21DC0B96-ED87-4130-BA8D-E8CF73903344}
{D5A42BE7-D229-4746-9D2A-AC878F79DBED} = {21DC0B96-ED87-4130-BA8D-E8CF73903344}
{66AFF428-DE0D-4F7A-B5D4-B321DE267A15} = {21DC0B96-ED87-4130-BA8D-E8CF73903344}
{4AF55920-007C-411D-8AD3-6F9D2C722450} = {E5DE00AF-3C91-41CE-B37C-2C46F97739F3}
{92C7B430-4830-4ECB-B195-7AA306F1ED21} = {E5DE00AF-3C91-41CE-B37C-2C46F97739F3}
{CA0BF3A4-392B-41AC-AAEF-C83A59913499} = {E5DE00AF-3C91-41CE-B37C-2C46F97739F3}
{5C45543E-B3FA-4C1F-9D7D-DA2E6654BD61} = {21DC0B96-ED87-4130-BA8D-E8CF73903344}
{910C5689-CC8A-4E5B-8894-B00515C90466} = {5C45543E-B3FA-4C1F-9D7D-DA2E6654BD61}
{08778353-0814-41BB-B49E-36BBA8D7751D} = {5C45543E-B3FA-4C1F-9D7D-DA2E6654BD61}
{469D68F1-379E-46A6-AAC3-CD1E4C0E7D77} = {5C45543E-B3FA-4C1F-9D7D-DA2E6654BD61}
{3E4AF4E5-02EE-4F26-9B6D-8723670172B3} = {21DC0B96-ED87-4130-BA8D-E8CF73903344}
{E5008BA6-6358-413C-A082-AF14115EF18B} = {21DC0B96-ED87-4130-BA8D-E8CF73903344}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {384CDE06-46A5-4FC5-AED4-7B23339EA56F}
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,18 @@ Blazor technology.

### How to select a specific Database?

1. Open the `appsettings.json` file located in the src directory of the `Blazor.Server.UI` project.
1. Open the `appsettings.json` file located in the src directory of the `Server.UI` project.
2. Change the setting `DBProvider` to the desired provider name (See Supported Databases).
3. Change the `ConnectionString` to a connection string, which works for your selected database provider.

## Docker compose https deployment

- Create self-signed development certificates for the project
- cmd: `dotnet dev-certs https -ep $env:USERPROFILE\.aspnet\https\Blazor.Server.UI.pfx -p Password@123`
- cmd: `dotnet dev-certs https -ep $env:USERPROFILE\.aspnet\https\CleanArchitecture.Blazor.Server.UI.pfx -p Password@123`
- cmd: `dotnet dev-certs https --trust`
- Manage User secrets to save the password
- cmd: `dotnet user-secrets init`
- cmd: `dotnet user-secrets -p Blazor.Server.UI.csproj set "Kestrel:Certificates:Development:Password" "Password@123"`
- cmd: `dotnet user-secrets -p Server.UI.csproj set "Kestrel:Certificates:Development:Password" "Password@123"`

## Code Generator Extension for visual studio.net 2022

Expand Down
11 changes: 0 additions & 11 deletions docker-compose.dcproj
Original file line number Diff line number Diff line change
Expand Up @@ -12,22 +12,11 @@
<None Include="docker-compose.yml" />
<None Include="docker-compose.override.yml" />
<None Include=".dockerignore" />
<None Include="src\Blazor.Server.UI\Pages\Identity\Users\Users.razor.cs" />
<None Include="src\Blazor.Server.UI\Shared\UserLoginState.razor.cs" />
</ItemGroup>
<ItemGroup>
<None Remove="launchSettings.json" />
</ItemGroup>
<ItemGroup>
<None Remove="launchSettings.json" />
</ItemGroup>
<ItemGroup>
<None Remove="launchSettings.json" />
</ItemGroup>
<ItemGroup>
<None Remove="src\**" />
</ItemGroup>
<ItemGroup>
<None Include="src\Blazor.Server.UI\Pages\Identity\Users\Profile.razor.cs" />
</ItemGroup>
</Project>
4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@ services:
image: ${DOCKER_REGISTRY-}blazorserver
build:
context: .
dockerfile: src/Blazor.Server.UI/Dockerfile
dockerfile: src/Server.UI/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Development
- UseInMemoryDatabase=true
- ConnectionStrings__DefaultConnection=Server=sqldb;Database=BlazorDashboardDb;User=sa;Password=Password@123;MultipleActiveResultSets=true
- ASPNETCORE_URLS=https://+:443;http://+:80
#- ASPNETCORE_Kestrel__Certificates__Default__Password=Password@123
#- ASPNETCORE_Kestrel__Certificates__Default__Path=/root/.aspnet/https/Blazor.Server.UI.pfx
#- ASPNETCORE_Kestrel__Certificates__Default__Path=/root/.aspnet/https/CleanArchitecture.Blazor.Server.UI.pfx
volumes:
- ${APPDATA}\microsoft\UserSecrets\:/root/.microsoft/usersecrets:ro
- ~/.aspnet/https:/root/.aspnet/https:ro
Expand Down
64 changes: 27 additions & 37 deletions src/Application/Application.csproj
Original file line number Diff line number Diff line change
@@ -1,39 +1,29 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<RootNamespace>CleanArchitecture.Blazor.Application</RootNamespace>
<AssemblyName>CleanArchitecture.Blazor.Application</AssemblyName>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Ardalis.Specification" Version="7.0.0" />
<PackageReference Include="Ardalis.Specification.EntityFrameworkCore" Version="7.0.0" />
<PackageReference Include="ClosedXML" Version="0.102.1" />
<PackageReference Include="jcamp.FluentEmail.Core" Version="3.2.0" />
<PackageReference Include="jcamp.FluentEmail.MailKit" Version="3.2.0" />
<PackageReference Include="jcamp.FluentEmail.Razor" Version="3.2.0" />
<PackageReference Include="MailKit" Version="4.2.0" />
<PackageReference Include="AutoMapper" Version="12.0.1" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="12.0.1" />
<PackageReference Include="FluentValidation" Version="11.7.1" />
<PackageReference Include="FluentValidation.DependencyInjectionExtensions" Version="11.7.1" />
<PackageReference Include="Fluxor.Blazor.Web" Version="5.9.1" />
<PackageReference Include="Fluxor.Blazor.Web.ReduxDevTools" Version="5.9.1" />
<PackageReference Include="LazyCache" Version="2.4.0" />
<PackageReference Include="LazyCache.AspNetCore" Version="2.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="7.0.12" />
<PackageReference Include="Microsoft.AspNetCore.SignalR.Client" Version="7.0.12" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.1.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="7.0.4" />
<PackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="7.0.12" />
<PackageReference Include="System.Linq.Dynamic.Core" Version="1.3.5" />
<PackageReference Include="Hangfire.Core" Version="1.8.5" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Domain\Domain.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="Common\Specification\" />
</ItemGroup>
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<RootNamespace>CleanArchitecture.Blazor.Application</RootNamespace>
<AssemblyName>CleanArchitecture.Blazor.Application</AssemblyName>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Ardalis.Specification" Version="7.0.0" />
<PackageReference Include="Ardalis.Specification.EntityFrameworkCore" Version="7.0.0" />
<PackageReference Include="ClosedXML" Version="0.102.1" />
<PackageReference Include="jcamp.FluentEmail.Core" Version="3.2.0" />
<PackageReference Include="AutoMapper" Version="12.0.1" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="12.0.1" />
<PackageReference Include="FluentValidation" Version="11.8.0" />
<PackageReference Include="FluentValidation.DependencyInjectionExtensions" Version="11.8.0" />
<PackageReference Include="LazyCache" Version="2.4.0" />
<PackageReference Include="LazyCache.AspNetCore" Version="2.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="7.0.13" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.1.2" />
<PackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="7.0.13" />
<PackageReference Include="System.Linq.Dynamic.Core" Version="1.3.5" />
<PackageReference Include="Hangfire.Core" Version="1.8.6" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Domain\Domain.csproj" />
</ItemGroup>
</Project>
31 changes: 0 additions & 31 deletions src/Application/Common/Behaviours/ValidationBehaviour.cs

This file was deleted.

2 changes: 1 addition & 1 deletion src/Application/Common/Extensions/QueryableExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// The .NET Foundation licenses this file to you under the MIT license.

using Ardalis.Specification.EntityFrameworkCore;
using CleanArchitecture.Blazor.Domain.Common;
using CleanArchitecture.Blazor.Domain.Common.Entities;

namespace CleanArchitecture.Blazor.Application.Common.Extensions;

Expand Down
26 changes: 26 additions & 0 deletions src/Application/Common/Extensions/ValidationExtensions.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
using FluentValidation.Results;

namespace CleanArchitecture.Blazor.Application.Common.Extensions;
public static class ValidationExtensions
{
public static async Task<List<ValidationFailure>> ValidateAsync<TRequest>(this IEnumerable<IValidator<TRequest>> validators, ValidationContext<TRequest> validationContext, CancellationToken cancellationToken = default)
{
if (!validators.Any()) return new List<ValidationFailure>();

var validationResults = await Task.WhenAll(
validators.Select(v => v.ValidateAsync(validationContext, cancellationToken)));

return validationResults
.SelectMany(r => r.Errors)
.Where(f => f != null)
.ToList();
}

public static Dictionary<string, string[]> ToDictionary(this List<ValidationFailure>? failures)
{
return failures != null && failures.Any()
? failures.GroupBy(e => e.PropertyName, e => e.ErrorMessage)
.ToDictionary(g => g.Key, g => g.ToArray())
: new Dictionary<string, string[]>();
}
}
15 changes: 0 additions & 15 deletions src/Application/Common/Helper/ConstantStringLocalizer.cs

This file was deleted.

22 changes: 0 additions & 22 deletions src/Application/Common/Helper/ValidationHelper.cs

This file was deleted.

2 changes: 1 addition & 1 deletion src/Application/Common/Interfaces/IApplicationDbContext.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// The .NET Foundation licenses this file to you under the MIT license.


using CleanArchitecture.Blazor.Domain.Entities.Logger;
using CleanArchitecture.Blazor.Domain.Entities;
using Microsoft.EntityFrameworkCore.ChangeTracking;

namespace CleanArchitecture.Blazor.Application.Common.Interfaces;
Expand Down
8 changes: 8 additions & 0 deletions src/Application/Common/Interfaces/IApplicationHubWrapper.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
namespace CleanArchitecture.Blazor.Application.Common.Interfaces;

// TODO: can be improved or removed using MediatR?
public interface IApplicationHubWrapper
{
Task JobStarted(string message);
Task JobCompleted(string message);
}
19 changes: 19 additions & 0 deletions src/Application/Common/Interfaces/IApplicationSettings.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
namespace CleanArchitecture.Blazor.Application.Common.Interfaces;
public interface IApplicationSettings
{
/// <summary>
/// Current application version
/// </summary>
string Version { get; }

/// <summary>
/// Application framework
/// </summary>

string App { get; }

/// <summary>
/// The application name / title
/// </summary>
string AppName { get; }
}
Loading