From 196f3b1fe44ce1d2f2da2feff7068f169bc11c1b Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Sun, 28 Jun 2026 10:45:39 +0330 Subject: [PATCH] last ... --- Constants/XCategoryServiceConstants.cs | 7 +++++++ DI/XDIHelperExtension.cs | 7 ++++++- .../IXCategorySubCategoryReferenceProvider.cs | 8 ++++++++ .../XCategorySubCategoryReferenceProvider.cs | 17 +++++++++++++++++ 4 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 Constants/XCategoryServiceConstants.cs create mode 100644 Interfaces/IXCategorySubCategoryReferenceProvider.cs create mode 100644 Providers/XCategorySubCategoryReferenceProvider.cs diff --git a/Constants/XCategoryServiceConstants.cs b/Constants/XCategoryServiceConstants.cs new file mode 100644 index 0000000..2176ed8 --- /dev/null +++ b/Constants/XCategoryServiceConstants.cs @@ -0,0 +1,7 @@ +namespace xCategoryService.Constants +{ + public struct XCategoryServiceConstants + { + public const string SubCategoryReference = "SubCat"; + } +} \ No newline at end of file diff --git a/DI/XDIHelperExtension.cs b/DI/XDIHelperExtension.cs index 1e67500..4daa366 100644 --- a/DI/XDIHelperExtension.cs +++ b/DI/XDIHelperExtension.cs @@ -8,7 +8,6 @@ using xCategoryService.Interfaces.Entities; using xCategoryService.Providers; using xCategoryService.Providers.Dtos; using xCategoryService.Providers.Entities; -using xCategoryService.Providers.GraphQL; using xCommons.Extensions; using xCommons.Helpers; using xDataService.Constants; @@ -284,6 +283,12 @@ namespace xCategoryService.DI new ServiceDescriptor(typeof(IXCategoryDescriptionResourceProvider), typeof(XCategoryDescriptionResourceProvider), lifeTime) ); + // + // Reference Providers ... + services.Add( + new ServiceDescriptor(typeof(IXCategorySubCategoryReferenceProvider), typeof(XCategorySubCategoryReferenceProvider), lifeTime) + ); + // // Provider ... services.Add( diff --git a/Interfaces/IXCategorySubCategoryReferenceProvider.cs b/Interfaces/IXCategorySubCategoryReferenceProvider.cs new file mode 100644 index 0000000..2e54c32 --- /dev/null +++ b/Interfaces/IXCategorySubCategoryReferenceProvider.cs @@ -0,0 +1,8 @@ +namespace xCategoryService.Interfaces +{ + /// + /// a Service for SubCategory Referencing on Category ... + /// + public interface IXCategorySubCategoryReferenceProvider : IXBaseCategoryProvider + { } +} \ No newline at end of file diff --git a/Providers/XCategorySubCategoryReferenceProvider.cs b/Providers/XCategorySubCategoryReferenceProvider.cs new file mode 100644 index 0000000..494757d --- /dev/null +++ b/Providers/XCategorySubCategoryReferenceProvider.cs @@ -0,0 +1,17 @@ +using xCategoryService.Constants; +using xCategoryService.Interfaces; +using xCategoryService.Interfaces.Dtos; + +namespace xCategoryService.Providers +{ + public class XCategorySubCategoryReferenceProvider : XBaseCategoryProvider, IXCategorySubCategoryReferenceProvider + { + public XCategorySubCategoryReferenceProvider( + IXCategoryServiceProvider categoryProvider + ) : base( + categoryProvider: categoryProvider, + providedFor: XCategoryServiceConstants.SubCategoryReference + ) + { } + } +} \ No newline at end of file