mirror of
https://github.com/meysamhadeli/booking-microservices.git
synced 2026-04-21 03:27:58 +08:00
Merge branch 'refs/heads/develop'
This commit is contained in:
commit
bb86232fef
20
.config/dotnet-tools.json
Normal file
20
.config/dotnet-tools.json
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"isRoot": true,
|
||||||
|
"tools": {
|
||||||
|
"dotnet-outdated-tool": {
|
||||||
|
"version": "4.6.4",
|
||||||
|
"commands": [
|
||||||
|
"dotnet-outdated"
|
||||||
|
],
|
||||||
|
"rollForward": false
|
||||||
|
},
|
||||||
|
"dotnet-ef": {
|
||||||
|
"version": "8.0.8",
|
||||||
|
"commands": [
|
||||||
|
"dotnet-ef"
|
||||||
|
],
|
||||||
|
"rollForward": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
14
README.md
14
README.md
@ -24,6 +24,8 @@
|
|||||||
- [Technologies - Libraries](#technologies---libraries)
|
- [Technologies - Libraries](#technologies---libraries)
|
||||||
- [The Domain and Bounded Context - Service Boundary](#the-domain-and-bounded-context---service-boundary)
|
- [The Domain and Bounded Context - Service Boundary](#the-domain-and-bounded-context---service-boundary)
|
||||||
- [Structure of Project](#structure-of-project)
|
- [Structure of Project](#structure-of-project)
|
||||||
|
- [Development Setup](#development_setup)
|
||||||
|
- [Dotnet Tool Packages](#dotnet_tool_packages)
|
||||||
- [How to Run](#how-to-run)
|
- [How to Run](#how-to-run)
|
||||||
- [Config Certificate](#config-certificate)
|
- [Config Certificate](#config-certificate)
|
||||||
- [Docker Compose](#docker-compose)
|
- [Docker Compose](#docker-compose)
|
||||||
@ -154,6 +156,18 @@ I used CQRS to decompose my features into small parts that makes our application
|
|||||||
|
|
||||||
Using the CQRS pattern, we cut each business functionality into vertical slices, for each of these slices we group classes (see [technical folders structure](http://www.kamilgrzybek.com/design/feature-folders)) specific to that feature together (command, handlers, infrastructure, repository, controllers, etc). In our CQRS pattern each command/query handler is a separate slice. This is where you can reduce coupling between layers. Each handler can be a separated code unit, even copy/pasted. Thanks to that, we can tune down the specific method to not follow general conventions (e.g. use custom SQL query or even different storage). In a traditional layered architecture, when we change the core generic mechanism in one layer, it can impact all methods.
|
Using the CQRS pattern, we cut each business functionality into vertical slices, for each of these slices we group classes (see [technical folders structure](http://www.kamilgrzybek.com/design/feature-folders)) specific to that feature together (command, handlers, infrastructure, repository, controllers, etc). In our CQRS pattern each command/query handler is a separate slice. This is where you can reduce coupling between layers. Each handler can be a separated code unit, even copy/pasted. Thanks to that, we can tune down the specific method to not follow general conventions (e.g. use custom SQL query or even different storage). In a traditional layered architecture, when we change the core generic mechanism in one layer, it can impact all methods.
|
||||||
|
|
||||||
|
## Development Setup
|
||||||
|
|
||||||
|
### Dotnet Tool Packages
|
||||||
|
For installing our requirement package with .NET cli tools, we need to install `dotnet tool manifest`.
|
||||||
|
```bash
|
||||||
|
dotnet new tool-manifest
|
||||||
|
```
|
||||||
|
And after that we can restore our dotnet tool packages with .NET cli tools from `.config` folder and `dotnet-tools.json` file.
|
||||||
|
```
|
||||||
|
dotnet tool restore
|
||||||
|
```
|
||||||
|
|
||||||
## How to Run
|
## How to Run
|
||||||
|
|
||||||
> ### Config Certificate
|
> ### Config Certificate
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user