Skip to content

Namespace Mapping Reference

This document provides a mapping between the old Shared.* namespaces and the new Microtec.* namespaces for migration reference.

Core Packages

Shared.Core → Microtec.Domain

Old NamespaceNew Namespace
Shared.CoreMicrotec.Domain
Shared.Core.BaseMicrotec.Domain.Base
Shared.Core.ModelsMicrotec.Domain.Models
Shared.Core.InterfacesMicrotec.Domain.Interfaces
Shared.Core.EnumsMicrotec.Domain.Enums
Shared.Core.ConstantsMicrotec.Domain.Constants
Shared.Core.ExceptionsMicrotec.Domain.Exceptions
Shared.Core.Exceptions.ConstantsMicrotec.Domain.Exceptions.Constants
Shared.Core.ExtensionsMicrotec.Domain.Extensions
Shared.Core.TenantProvidersMicrotec.Domain.TenantProviders
Shared.Core.AttributesMicrotec.Domain.Attributes
Shared.Core.HelpersMicrotec.Domain.Helpers

Shared.Core → Microtec.Contracts (DTOs & CQRS)

Old NamespaceNew Namespace
Shared.Core.DtosMicrotec.Contracts.Dtos
Shared.Core.Dtos.CommonMicrotec.Contracts.Dtos.Common
Shared.Core.Dtos.PaginationMicrotec.Contracts.Dtos.Pagination
Shared.Core.CQRSMicrotec.Contracts.CQRS
Shared.Core.CQRS.CommandMicrotec.Contracts.CQRS.Command
Shared.Core.CQRS.QueryMicrotec.Contracts.CQRS.Query

Shared.Core → Microtec.PublicApi (Service-to-Service)

Old NamespaceNew Namespace
Shared.Core.PublicApiMicrotec.PublicApi
Shared.Core.PublicApi.AttachmentMicrotec.PublicApi.Attachment
Shared.Core.PublicApi.CommonMicrotec.PublicApi.Common

Platform.PublicApi.AppsPortal → Microtec.PublicApi.AppsPortal

Old NamespaceNew Namespace
Platform.PublicApi.AppsPortalMicrotec.PublicApi.AppsPortal
Platform.PublicApi.AppsPortal.AccountingMicrotec.PublicApi.AppsPortal.Accounting
Platform.PublicApi.AppsPortal.Accounting.DtosMicrotec.PublicApi.AppsPortal.Accounting.Dtos
Platform.PublicApi.AppsPortal.Accounting.Dtos.ChartOfAccountsMicrotec.PublicApi.AppsPortal.Accounting.Dtos.ChartOfAccounts
Platform.PublicApi.AppsPortal.Accounting.Dtos.JournalEntriesMicrotec.PublicApi.AppsPortal.Accounting.Dtos.JournalEntries
Platform.PublicApi.AppsPortal.FinanceMicrotec.PublicApi.AppsPortal.Finance
Platform.PublicApi.AppsPortal.Finance.DtosMicrotec.PublicApi.AppsPortal.Finance.Dtos
Platform.PublicApi.AppsPortal.GeneralSettingsMicrotec.PublicApi.AppsPortal.GeneralSettings
Platform.PublicApi.AppsPortal.GeneralSettings.DtosMicrotec.PublicApi.AppsPortal.GeneralSettings.Dtos
Platform.PublicApi.AppsPortal.GeneralSettings.Dtos.SequenceMicrotec.PublicApi.AppsPortal.GeneralSettings.Dtos.Sequence
Platform.PublicApi.AppsPortal.GeneralSettings.Dtos.TaxMicrotec.PublicApi.AppsPortal.GeneralSettings.Dtos.Tax
Platform.PublicApi.AppsPortal.GeneralSettings.Dtos.GeneralSettingRestClientDtosMicrotec.PublicApi.AppsPortal.GeneralSettings.Dtos.GeneralSettingRestClientDtos
Platform.PublicApi.AppsPortal.InventoryMicrotec.PublicApi.AppsPortal.Inventory
Platform.PublicApi.AppsPortal.Inventory.DtosMicrotec.PublicApi.AppsPortal.Inventory.Dtos
Platform.PublicApi.AppsPortal.PurchaseMicrotec.PublicApi.AppsPortal.Purchase
Platform.PublicApi.AppsPortal.Purchase.DtosMicrotec.PublicApi.AppsPortal.Purchase.Dtos
Platform.PublicApi.AppsPortal.SalesMicrotec.PublicApi.AppsPortal.Sales
Platform.PublicApi.AppsPortal.Sales.DtosMicrotec.PublicApi.AppsPortal.Sales.Dtos
Platform.PublicApi.AppsPortal.VanSaleMicrotec.PublicApi.AppsPortal.VanSale
Platform.PublicApi.AppsPortal.VanSale.DtosMicrotec.PublicApi.AppsPortal.VanSale.Dtos

Infrastructure Packages

Shared.Infrastructure → Microtec.Persistence (Data Access)

Old NamespaceNew Namespace
Shared.Infrastructure.BaseMicrotec.Persistence.Base
Shared.Infrastructure.ExtensionsMicrotec.Persistence.Extensions
Shared.Infrastructure.InterceptorsMicrotec.Persistence.Interceptors

Shared.Infrastructure → Microtec.Messaging (Caching & Events)

Old NamespaceNew Namespace
Shared.Infrastructure.ServicesMicrotec.Messaging.Services
Shared.Infrastructure.Services.CacheServiceMicrotec.Messaging.Services.CacheService
Shared.Infrastructure.Services.EventPublisherMicrotec.Messaging.Services.EventPublisher

Shared.Infrastructure → Microtec.Reporting (Reports & QR)

Old NamespaceNew Namespace
Shared.Infrastructure.GenerateQRCodeMicrotec.Reporting.GenerateQRCode
Shared.Infrastructure.GenerateReportMicrotec.Reporting.GenerateReport
Shared.Infrastructure.GenerateReport.ExcelMicrotec.Reporting.GenerateReport.Excel
Shared.Infrastructure.GenerateReport.PdfMicrotec.Reporting.GenerateReport.Pdf
Shared.Infrastructure.GenerateReport.Pdf.ComponentsMicrotec.Reporting.GenerateReport.Pdf.Components
Shared.Infrastructure.GenerateReport.Pdf.ConfigurationMicrotec.Reporting.GenerateReport.Pdf.Configuration
Shared.Infrastructure.GenerateReport.Pdf.TemplatesMicrotec.Reporting.GenerateReport.Pdf.Templates

Web Packages

Shared.Web → Microtec.Web.Core

Old NamespaceNew Namespace
Shared.WebMicrotec.Web.Core
Shared.Web.AuthenticationMicrotec.Web.Core.Authentication
Shared.Web.AuthorizationMicrotec.Web.Core.Authorization
Shared.Web.BaseMicrotec.Web.Core.Base
Shared.Web.CommonMicrotec.Web.Core.Common
Shared.Web.FiltersMicrotec.Web.Core.Filters
Shared.Web.LocalizationMicrotec.Web.Core.Localization
Shared.Web.MiddlewareMicrotec.Web.Core.Middleware
Shared.Web.OptionsMicrotec.Web.Core.Options
Shared.Web.Security.ServicesMicrotec.Web.Core.Security.Services

Shared.Web → Microtec.Web.Hosting

Old NamespaceNew Namespace
Shared.Web.ExtensionsMicrotec.Web.Hosting.Extensions
Shared.Web.OptionsSetupMicrotec.Web.Hosting.OptionsSetup
Shared.Web.OptionsSetup.ApiUrlsMicrotec.Web.Hosting.OptionsSetup.ApiUrls
Shared.Web.OptionsSetup.MailMicrotec.Web.Hosting.OptionsSetup.Mail
Shared.Web.OptionsSetup.RedisMicrotec.Web.Hosting.OptionsSetup.Redis

Import Packages

Import.* → Microtec.Import.*

Old NamespaceNew Namespace
Import.DomainMicrotec.Import.Domain
Import.Domain.CommonMicrotec.Import.Domain.Common
Import.Domain.EntitiesMicrotec.Import.Domain.Entities
Import.Domain.EnumsMicrotec.Import.Domain.Enums
Import.Domain.InterfacesMicrotec.Import.Domain.Interfaces
Import.Domain.Interfaces.BackgroundJobMicrotec.Import.Domain.Interfaces.BackgroundJob
Import.Domain.Interfaces.RepositoriesMicrotec.Import.Domain.Interfaces.Repositories
Import.Domain.Interfaces.ServicesMicrotec.Import.Domain.Interfaces.Services
Import.InfrastructureMicrotec.Import.Infrastructure
Import.Infrastructure.DbMicrotec.Import.Infrastructure.Db
Import.Infrastructure.Db.ConfigurationsMicrotec.Import.Infrastructure.Db.Configurations
Import.Infrastructure.Db.RepositoriesMicrotec.Import.Infrastructure.Db.Repositories
Import.Infrastructure.FileHandlersMicrotec.Import.Infrastructure.FileHandlers
Import.Infrastructure.StorageMicrotec.Import.Infrastructure.Storage
Import.IntegrationMicrotec.Import.Integration
Import.Integration.BackgroundJobMicrotec.Import.Integration.BackgroundJob
Import.Integration.ConfigurationMicrotec.Import.Integration.Configuration
Import.Integration.HelpersMicrotec.Import.Integration.Helpers
Import.Integration.InterfacesMicrotec.Import.Integration.Interfaces
Import.Integration.ModelsMicrotec.Import.Integration.Models
Import.Integration.Models.CommandsMicrotec.Import.Integration.Models.Commands
Import.Integration.Models.QueriesMicrotec.Import.Integration.Models.Queries
Import.Integration.StrategiesMicrotec.Import.Integration.Strategies
Import.Integration.Strategies.ServicesMicrotec.Import.Integration.Strategies.Services

Zatca Packages

Zatca.* → Microtec.Zatca.*

Old NamespaceNew Namespace
Zatca.InfrastructureMicrotec.Zatca.Infrastructure
Zatca.Infrastructure.DbMicrotec.Zatca.Infrastructure.Db
Zatca.Infrastructure.Db.ConfigurationsMicrotec.Zatca.Infrastructure.Db.Configurations
Zatca.Infrastructure.EntitiesMicrotec.Zatca.Infrastructure.Entities
Zatca.IntegrationMicrotec.Zatca.Integration
Zatca.Integration.AuthMicrotec.Zatca.Integration.Auth
Zatca.Integration.ConfigurationsMicrotec.Zatca.Integration.Configurations
Zatca.Integration.DtosMicrotec.Zatca.Integration.Dtos
Zatca.Integration.Dtos.InvoicesMicrotec.Zatca.Integration.Dtos.Invoices
Zatca.Integration.Dtos.ResponseMicrotec.Zatca.Integration.Dtos.Response
Zatca.Integration.EnumsMicrotec.Zatca.Integration.Enums
Zatca.Integration.Enums.ConvertersMicrotec.Zatca.Integration.Enums.Converters
Zatca.Integration.ServicesMicrotec.Zatca.Integration.Services

Assembly Markers

Old Assembly MarkerNew Assembly Marker
SharedCoreAssembly.AssemblyNameMicrotecDomainAssembly.AssemblyName
SharedInfrastructureAssembly.AssemblyNameMicrotecContractsAssembly.AssemblyName
SharedWebAssembly.AssemblyNameMicrotecWebCoreAssembly.AssemblyName
ImportDomain.AssemblyNameMicrotecImportDomainAssembly.AssemblyName
ImportInfrastructure.AssemblyNameMicrotecImportInfrastructureAssembly.AssemblyName
ImportApplication.AssemblyNameMicrotecImportIntegrationAssembly.AssemblyName
ZatcaInfrastructure.AssemblyNameMicrotecZatcaInfrastructureAssembly.AssemblyName
ZatcaIntegration.AssemblyNameMicrotecZatcaIntegrationAssembly.AssemblyName
N/A (new package)MicrotecPublicApiAppsPortalAssembly.AssemblyName

Common Using Statement Conversions

csharp
// Old
using Shared.Core.Base;
using Shared.Core.Interfaces;
using Shared.Core.Models;
using Shared.Core.Extensions;
using Shared.Core.TenantProviders;
using Shared.Core.Constants;
using Shared.Core.Exceptions;
using Shared.Infrastructure.Base;
using Shared.Infrastructure.Extensions;
using Shared.Infrastructure.Interceptors;
using Shared.Infrastructure.Services;
using Shared.Infrastructure.GenerateReport.Excel;
using Shared.Web.Middleware;
using Shared.Web.Extensions;

// New
using Microtec.Domain.Base;
using Microtec.Domain.Interfaces;
using Microtec.Domain.Models;
using Microtec.Domain.Extensions;
using Microtec.Domain.TenantProviders;
using Microtec.Domain.Constants;
using Microtec.Domain.Exceptions;
using Microtec.Persistence.Base;
using Microtec.Persistence.Extensions;
using Microtec.Persistence.Interceptors;
using Microtec.Messaging.Services;
using Microtec.Reporting.GenerateReport.Excel;
using Microtec.Web.Core.Middleware;
using Microtec.Web.Hosting.Extensions;

Project Reference Conversions

xml
<!-- Old -->
<ProjectReference Include="..\Shared\Shared.Core\Shared.Core.csproj" />
<ProjectReference Include="..\Shared\Shared.Infrastructure\Shared.Infrastructure.csproj" />
<ProjectReference Include="..\Shared\Shared.Web\Shared.Web.csproj" />

<!-- New (choose based on what you need) -->
<ProjectReference Include="..\Shared\Microtec.Domain\Microtec.Domain.csproj" />
<ProjectReference Include="..\Shared\Microtec.Contracts\Microtec.Contracts.csproj" />
<ProjectReference Include="..\Shared\Microtec.PublicApi\Microtec.PublicApi.csproj" />
<ProjectReference Include="..\Shared\Microtec.PublicApi.AppsPortal\Microtec.PublicApi.AppsPortal.csproj" />
<ProjectReference Include="..\Shared\Microtec.Persistence\Microtec.Persistence.csproj" />
<ProjectReference Include="..\Shared\Microtec.Messaging\Microtec.Messaging.csproj" />
<ProjectReference Include="..\Shared\Microtec.Reporting\Microtec.Reporting.csproj" />
<ProjectReference Include="..\Shared\Microtec.Web.Core\Microtec.Web.Core.csproj" />
<ProjectReference Include="..\Shared\Microtec.Web.Hosting\Microtec.Web.Hosting.csproj" />

Package Dependency Hierarchy

Microtec.Domain (no dependencies)

Microtec.Contracts (depends on Microtec.Domain)

Microtec.PublicApi (depends on Microtec.Domain, Microtec.Contracts)
Microtec.PublicApi.AppsPortal (depends on Microtec.Domain, Microtec.Contracts)
Microtec.Persistence (depends on Microtec.Domain, Microtec.Contracts)
Microtec.Messaging (depends on Microtec.Domain, Microtec.Contracts)
Microtec.Reporting (depends on Microtec.Domain, Microtec.Contracts, Microtec.Messaging)

Microtec.Web.Core (depends on Microtec.Domain, Microtec.Contracts, Microtec.Messaging)

Microtec.Web.Hosting (depends on Microtec.Web.Core, Microtec.Messaging, Microtec.Persistence)

Import & Zatca Package Dependencies

Microtec.Import.Domain (depends on Microtec.Domain)

Microtec.Import.Infrastructure (depends on Microtec.Import.Domain, Microtec.Persistence, Microtec.Reporting)

Microtec.Import.Integration (depends on all Import packages + Microtec.Web.Hosting)

Microtec.Zatca.Infrastructure (depends on Microtec.Domain, Microtec.Persistence)

Microtec.Zatca.Integration (depends on Microtec.Zatca.Infrastructure, Microtec.Domain, Microtec.Contracts)

Internal Documentation — Microtec