softinven.application.services
1.0.0
dotnet add package softinven.application.services --version 1.0.0
NuGet\Install-Package softinven.application.services -Version 1.0.0
<PackageReference Include="softinven.application.services" Version="1.0.0" />
paket add softinven.application.services --version 1.0.0
#r "nuget: softinven.application.services, 1.0.0"
// Install softinven.application.services as a Cake Addin #addin nuget:?package=softinven.application.services&version=1.0.0 // Install softinven.application.services as a Cake Tool #tool nuget:?package=softinven.application.services&version=1.0.0
# Application Layer - Inventory Management System
## Overview
The Application layer is a core component of the Inventory Management System, responsible for implementing the business logic and use cases. It acts as a bridge between the Domain layer and the Infrastructure and WebUI layers, ensuring that the business rules are applied correctly and consistently.
## Structure
The Application layer is structured into several key components:
- **Commands:** These handle the creation, updating, and deletion of entities.
- **Queries:** These handle the retrieval of data from the system.
- **DTOs (Data Transfer Objects):** These are used to transfer data between the Application layer and other layers.
- **Services:** These encapsulate business logic and interact with the Domain layer.
- **Interfaces:** These define contracts that the Infrastructure layer implements.
## Project Structure
Application/ ├── Commands/ │ ├── CreateItemCommand.cs │ ├── UpdateItemCommand.cs │ └── DeleteItemCommand.cs ├── Queries/ │ ├── GetItemByIdQuery.cs │ ├── GetAllItemsQuery.cs │ └── SearchItemsQuery.cs ├── DTOs/ │ ├── ItemDto.cs │ └── InventorySummaryDto.cs ├── Services/ │ ├── InventoryService.cs │ └── ReportService.cs ├── Interfaces/ │ ├── IInventoryService.cs │ ├── IReportService.cs │ └── IItemRepository.cs ├── ApplicationDbContext.cs └── DependencyInjection.cs
## Dependencies
The Application layer depends on the following NuGet packages:
- `AutoMapper`
- `FluentValidation`
- `MediatR`
- `Microsoft.Extensions.DependencyInjection`
To install these packages, run:
```bash
dotnet add package AutoMapper
dotnet add package FluentValidation
dotnet add package MediatR
dotnet add package Microsoft.Extensions.DependencyInjection
Commands
Commands are used to perform actions that modify the state of the system. Each command is handled by a corresponding handler.
Queries
Queries are used to retrieve data without modifying the state of the system. Each query is handled by a corresponding handler.
DTOs (Data Transfer Objects)
DTOs are used to transfer data between the Application layer and other layers, ensuring a clean separation of concerns.
Services
Services encapsulate business logic and interact with the Domain layer to perform operations and calculations.
Interfaces
Interfaces define the contracts that the Infrastructure layer implements, promoting loose coupling and dependency inversion.
Getting Started
To get started with the Application layer:
- Clone the repository:
git clone https://github.com/TheSoftNode/Soft-Inven.git
- Navigate to the Application layer directory:
cd Application
- Restore the dependencies:
dotnet restore
- Build the project:
dotnet build
Contribution
We welcome contributions to the Application layer. Please fork the repository and submit pull requests.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Note: Replace https://github.com/TheSoftNode/Soft-Inven.git
with your actual repository URL.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- MediatR (>= 12.3.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.1)
- Microsoft.Extensions.Identity.Stores (>= 8.0.6)
- NetcodeHub.Packages.Extensions.Attributes.RequiredGuid (>= 1.0.0)
- softinven.domain.data (>= 1.0.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on softinven.application.services:
Package | Downloads |
---|---|
softinven.Infrastructure.services
This Infrastructure handles the commands and queries handlers aspect of the inventory management system |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 139 | 7/11/2024 |