The Sin.Net Project contains a list of reusable assemblies to build clean software architectures for any software purpose.
Downloadable on NuGet
API Documentation and Blog
You find a full API documentation here: https://sin-net.github.io/Sin.Net/
Here, I own a blog and write some posts about the project and myself: https://sin-net.github.io/Pages/
Implements basic abstractions and interfaces that can be used for all types of .Net applications.
The abstractions cover the following definitions:
- A general persistence layer, following the strategy pattern.
- Logging, see optional Implementation Sin.Net.Logging for more information.
- A repository pattern for managing collections and attached fields.
- Http and Mqtt service definitions. These are implemented in the Sin.Net.Infrastructure assembly.
The persistence assembly provides commonly used export and import functionalities, Like csv or json ex- and import. With small adapter classes you can map between your internal data model and your desired ex- or import data.
Implements logging as part of the persistence layer. This assembly can be seen as reference code or for usage in addition to the Sin.Net.Domain assembly.
This assembly provides functionality for an easy usage of external services. At the moment Http and Mqtt are supported.
- The Http service is based on Microsofts standard http client implementation. Here you easy can use the HttpClientFactory to inject your Http client.
- The Mqtt service is based on MqttNet.Standard.