The project is based on the Steel Toe framework. SteelToe is a developer API framework for DotNet core applications. It brings microservice design patterns and lessons learned from Spring Boot to the Dotnet world.
Included in the showcase
- SteelToe Postgres Connector
- Repository pattern
- SteelToe Application Configuration
- SteelToe Dynamic Logging
- SteelToe Stream
- RabbitMQ
- Postgres
- Database migrations
- Domain-driven design
- Web API Controller
- Test Driven Development using MSTest
- Mocking using Moq
- Mono Repo
Set connection string environment environment
export ConnectionString="Host=127.0.0.1;Database=postgres;Username=postgres;Password=$POSTGRES_DB_PASSWORD"
export rabbit_vhost=streaming
cd applications/streaming.consumer
dotnet run
cd applications/service.api
dotnet run
open http://localhost:5000/swagger/index.html
open http://localhost:5000/swagger/index.html
Example List Results
This application creates the needed database schema on startup.
Install DB migration
dotnet tool install --global dotnet-ef --version "7.*"
Create a migration
dotnet ef migrations add InitialCreate
View migration SQL script
dotnet ef migrations script
dotnet test
dotnet new sln
dotnet sln add applications/service.api/steeltoe.data.showcase.csproj
dotnet sln add applications/streaming.consumer/steeltoe.streaming.consumer.csproj
dotnet sln add applications/streaming.consumer/steeltoe.streaming.consumer.csproj
dotnet sln add applications/steeltoe.showcase.caching.sink/steeltoe.showcase.caching.sink.csproj
account.service.csproj
Make components
mkdir -p components/account.domain
cd components/account.domain
dotnet new classlib -f net6.0
cd ../..
dotnet sln add components/account.domain/account.domain.csproj
dotnet sln add components/account.service/account.service.csproj