• Stars
    star
    346
  • Rank 118,389 (Top 3 %)
  • Language
    C#
  • License
    MIT License
  • Created about 4 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

This repository contains the implementation of domain-driven design and clear architecture in ASP.NET Core.

🏃‍♂️ How to Run the Project

  1. First make sure that you have .NET 7.0 and Visual Studio 2022 are installed.
  2. Now open the solution with VS 2022 and build the solution to make sure that there is no error.
  3. Now make CleanHr.Api and ClearHr.Blazor projects as startup projects and then run it. On startup necessary databases will be created in MSSQLLocalDB

Clean Architecture in ASP.NET Core

This repository contains the implementation of Domain Driven Design and Clear Architecture in ASP.NET Core.

⚙️ Fetures

  1. Domain Driven Design
  2. CQRS
  3. REST API
  4. API Versioning
  5. Blazor Client (Web Assembly)
  6. Caching with InMemory and Redis
  7. Logging with Serilog
  8. EF Core Repository and Cache Repository
  9. Microsoft SQL Server
  10. Simple and clean admin template for starter

📁 Folder Structures:

image

📂 src/ServerApp:

Will contain all the projects of the server side app and will look like as follows: tempsnip

📂 src/ServerApp/Core:

Core folder contains the projects related to the application's core funcationalities like Domain Logic and Application Logic. This folder is called the heart of the server app.

tempsnip

📝 EmployeeManagement.Domain Project:

This is application's Domain Layer which will contain:

  1. Domain entities and aggregate roots which will be mapped to database table
  2. Domain logic,
  3. Domain repositories
  4. Value objects.
  5. Domain Exceptions

This will not depend on any other project. This is fully independent.

tempsnip

📝 EmployeeManagement.Application Project:

This is application's Application Layer which will contain:

  1. Appplication Logic
  2. Infrastructure repositories' interfaces i.e Cache Repository interfaces.
  3. Infrastructure services' interfaces i.e IEmailSender, ISmsSender, IExceptionLogger etc.
  4. Data Transfer Objects (Dtos)
  5. Command and Queries

It will only depend on Domain project aka Domain Layer.

tempsnip

📂 src/ServerApp/Infrastructure:

This folder will contains all the project related to project's infrastuctures like Data access code, persistance and application's cross cutting concerns' intefaces implementation like IEmailSender, ISmsSender etc.

tempsnip

📂 src/ServerApp/Presentation:

This folder will contain the REST API projects which is the PresentationLayer of the project.

tempsnip

More Repositories

1

EFCore.GenericRepository

This repository contains Generic Repository implementation for Entity Framework Core
C#
527
star
2

SolidPrinciples

Contains clear examples and explanations of SOLID design principles.
C#
100
star
3

TanvirArjel.Extensions.Microsoft.DependencyInjection

This repository contains the generic service registration in ASP.NET Core Dependency Injection Container.
C#
55
star
4

CustomValidation

This is a custom validation library for C# .NET projects.
C#
39
star
5

AspNetCoreMvcIdentity

ASP.NET Core identity has been implemented as MVC for version greater than 2.0
C#
28
star
6

TanvirArjel.Blazor

This library is an extension of Microsoft ASP.NET Core Blazor
C#
14
star
7

LearningDSA

This repository contains implementation of relevant algorithms of different data structure. More importantly, this repository will be updated on continuous basis.
C++
10
star
8

TanvirArjel.Extensions.Microsoft.Caching

This library extended the functionality of IDistributedCache interface to make the caching mechanism more easier.
C#
6
star
9

SpringBootApi

This repository contains sample REST API implementation with Java Spring Boot.
Java
5
star
10

ArgumentChecker

This is method's arguments checking library in C#.
C#
4
star
11

JwtAuthenticationInAspNetCore

C#
4
star
12

CheckBoxListInAspNetMVC

Handling CheckBox List In ASP.NET MVC is somewhat complicated for those who are very new with development in ASP.NET MVC. Here I have shown the very simplest and easiest way to handling checkboxlist in ASP.NET MVC
C#
4
star
13

AspNetCore.ExceptionLogger

This is a global exception handler library for ASP.NET Core projects.
C#
4
star
14

DjangoCrud

This is a simple full fledged crud application with one model
Python
3
star
15

SimpleUniversityManagementAppCore

C#
2
star
16

JqueryDataTablesWithPopupInputForm

JavaScript
2
star
17

CustomActionBasedAuthenticationInASPNetMVC

JavaScript
2
star
18

CqrsWithMediatR

This is a sample project for the implementation of CQRS with MediatR
C#
2
star
19

LoggingWithSerilogInAspNetCore

This is a sample application demonstrating the logging functionality in asp.net core with serilog
HTML
2
star
20

CustomRoleBasedAuthenticationInASPNetMVC

JavaScript
2
star
21

MauiDemo

Connection refused when calling ASP.NET Core API endpoints from .NET MAUI Blazor App
C#
2
star
22

AspNetCoreLocalization

This app contain the configuration of how to make an ASP.NET Core application localized.
HTML
2
star
23

KibanaLog

This repository contain implementation of logging to Elastic Search and visualize with Kibana.
C#
2
star
24

WeatherApp

The is a demo weather update app
C#
2
star
25

JqueryDataTableWithAngular

This is Jquery DataTable With Angular
TypeScript
1
star
26

SendingEmailInAspNetMVC

Nothing
C#
1
star
27

AngularCrudWithAspNetCoreWebApi

CSS
1
star
28

DependencyInjectionInAspNetMvc

Described how to implement dependency injection in asp.net mvc
JavaScript
1
star
29

JQueryDataTableWithAspNetMVC

JavaScript
1
star
30

New-features-in-CSharp6.0

New amazing features in C# 6.0 with examples
C#
1
star
31

SimlpeLibraryManagementSystem

SimlpeLibraryManagementSystem With ASP.NET MVC, ASP.NET Web API and AngularJS
C#
1
star
32

SimpleAdminTemplate

This is simple admin template for small and medium project
JavaScript
1
star
33

JQueryDateTimePicker

Simplest Way to Use JQuery Date Picker/Calendar in ASP.NET/ASP.NET MVC
JavaScript
1
star
34

PollyRetryAndCircuitBreaker

The repo contains Polly integration with ASP.NET Core.
C#
1
star
35

tanvirarjel.github.io

Github Pages of Tanvir Arjel
HTML
1
star
36

CustomServerSidePaginationInAspNetMvc

Pagination is a very very important and oblagatory feature to handling the mammoth database in any platform.For them, those who are very new to Asp.net mvc developement, Handling pagination effectively and efficiently is a somewhat complicated suject. Here I have shown how to handle pagination effectively and efficiently incase of a very very large database.
C#
1
star