Mango.Nop.Libraries/Mango.Nop.Core
Loretta f47701af59 Add architecture docs for Mango.Nop & update dev DB config
Added detailed documentation: ARCHITECTURE.md, CONVENTIONS.md, GLOSSARY.md, and copilot-instructions.md for Mango.Nop.Core, Data, and Services. Updated/added README.md files for all Mango.Nop libraries and the FruitBank nopCommerce plugin, clarifying structure, key types, and usage. Switched appsettings.json connection string from production to development database. These changes improve developer onboarding and enforce architectural consistency.
2026-03-29 10:44:03 +02:00
..
Dtos Add serialization attributes and update to PROD config 2026-03-20 17:06:49 +01:00
Entities Add ToonDescription attributes to core entities and DTOs 2026-01-15 11:34:06 +01:00
Extensions improvements, fixes 2025-11-26 09:42:07 +01:00
Interfaces improvements, fixes 2025-11-26 09:42:07 +01:00
Loggers refactoring, cleanup, etc... 2025-10-22 15:16:20 +02:00
Models Minimal SignalR test hub and endpoint for isolated testing 2025-12-11 23:46:36 +01:00
NopDependencies Add serialization attributes and update to PROD config 2026-03-20 17:06:49 +01:00
Services SignalR improvements; etc... 2025-10-30 14:54:33 +01:00
Utils Mango.Nop.Core cleanup; 2025-11-05 14:56:40 +01:00
Mango.Nop.Core.csproj Update DLL HintPaths to use $(Configuration); prod DB switch 2026-03-24 18:30:43 +01:00
NopCommonConst.cs temp 2025-09-02 15:21:57 +02:00
README.md Add architecture docs for Mango.Nop & update dev DB config 2026-03-29 10:44:03 +02:00

README.md

Mango.Nop.Core

Shared domain library containing entities, DTOs, interfaces, and nopCommerce entity mirrors. net9.0.

Folder Structure

Folder Purpose
Dtos/ DTO classes shared across consumers: MgOrderDto, MgOrderItemDto, MgProductDto, MgGenericAttributeDto, MgStockQuantityHistoryDto, CustomerDto, ModelDtoBase
Entities/ Custom entities: MgEntityBase, MgStockTaking, MgStockTakingItem
Extensions/ Extension methods for nopCommerce BaseEntity collections and GenericAttribute
Interfaces/ DTO interfaces (IMgOrderDto, IMgProductDto, etc.), soft-delete interfaces, foreign key markers
Loggers/ ILogger / Logger — logging abstraction
Models/ Login request/response models (MgLoginModelRequest, MgLoginModelResponse)
NopDependencies/ Mirror copies of nopCommerce entity classes — BaseEntity, Customer, Order, OrderItem, Product, GenericAttribute, enums (OrderStatus, PaymentStatus, etc.)
Services/ IMgLockService interface
Utils/ CommonHelper2 — utility methods

Key Types

DTOs (Dtos/)

  • MgOrderDto — Order DTO used across SignalR communication
  • MgOrderItemDto — Order item DTO
  • MgProductDto — Product DTO with GenericAttribute-based properties
  • MgGenericAttributeDto — GenericAttribute DTO
  • ModelDtoBase / IModelDtoBase — base class for all DTOs

nopCommerce Mirrors (NopDependencies/)

Mirror copies of nopCommerce entities so that Mango.Nop.Core can be referenced without pulling in the full nopCommerce dependency chain. Includes:

  • BaseEntity — root entity base
  • Customer, CustomerRole, Order, OrderItem, Product, GenericAttribute, StockQuantityHistory
  • Enums: OrderStatus, PaymentStatus, ShippingStatus, ProductType, etc.

Entities (Entities/)

  • MgEntityBase — base for all custom Mango entities
  • MgStockTaking, MgStockTakingItem — stocktaking entities

Dependencies

  • linq2db — data access
  • MessagePack — binary serialization
  • Microsoft.AspNetCore.Mvc.NewtonsoftJson — JSON serialization