Skip to content

Latest commit

 

History

History
76 lines (43 loc) · 3.7 KB

README.md

File metadata and controls

76 lines (43 loc) · 3.7 KB

TransactionData application

.NET Core

This solution demonstrates how to create API, that accepts XML and CSV data files, containing simple "transaction" model, records and query to the data store, while logging all possible exceptions on the way.

Technologies

Overview

Application Core

This project contains domain of application, which includes: commands, constants, dtos, enums, events, models and queries.

This project contains abstractions for TransactionData.Service.

Application Infrastructure

This project contains all entityConfigurations, repositories and DbContext.

This project contains all entities, that are used to generate tables, using EF Core code-first approach.

This project contains data contractor interfaces, abstractions, that are used with Dependency injection to provide loose coupling between application and data provider.

This project contains Migrations for MSSQL database.

This project contains Migrations for Sqlite database.

This project contains command, query and event handlers for managing application requests.

This project represents Inversion of control, powered by ASP.NET Core Dependency injection mechanism. Introduces loose coupling between projects.

Outer Layer

This project is based on ASP.NET Core 3.1. Represents outer layer of application, WebAPI. Contains user friendly interface, powered by Swagger.

Tests

This project contains application unit tests.

License

The content of this project itself is licensed under the Gnu general public license