From 64afaccafa45ff7ab2cbf2749d1d4ae0880ea6fa Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Thu, 28 May 2026 07:33:31 +0330 Subject: [PATCH] Get Specified Item Tags ... --- Controllers/XFileRepositoryController.cs | 32 +++++++++++++++++ .../XFileRepositoryProviderController.cs | 35 +++++++++++++++++++ Controllers/XFileServiceController.cs | 32 +++++++++++++++++ Controllers/XFileServiceProviderController.cs | 35 +++++++++++++++++++ DI/XDIHelperExtension.cs | 14 ++++++++ Databases/XApiDbContext.cs | 8 ++++- xServices.csproj | 1 + 7 files changed, 156 insertions(+), 1 deletion(-) create mode 100644 Controllers/XFileRepositoryController.cs create mode 100644 Controllers/XFileRepositoryProviderController.cs create mode 100644 Controllers/XFileServiceController.cs create mode 100644 Controllers/XFileServiceProviderController.cs diff --git a/Controllers/XFileRepositoryController.cs b/Controllers/XFileRepositoryController.cs new file mode 100644 index 0000000..f5659a5 --- /dev/null +++ b/Controllers/XFileRepositoryController.cs @@ -0,0 +1,32 @@ +using System; +using System.Linq; +using Microsoft.EntityFrameworkCore.Query; +using Microsoft.Extensions.Logging; +using xCommons.Configurations; +using xCommons.Providers; +using xFileService.Controllers; +using xFileService.Interfaces.Entities; +using xFileService.Models.Entities; + +namespace xServices.Controllers +{ + public class XFileRepositoryController : XFileRepositoryControllerBase + { + public XFileRepositoryController( + ILogger logger, + XAppConfiguration appConfiguration, + XValidationProvider validationProvider, + IXFileRepository repository, + Func, IOrderedQueryable> defaultOrderBuilder = null, + Func, IIncludableQueryable> defaultIncludeBuilder = null + ) : base( + logger, + appConfiguration, + validationProvider, + repository, + defaultOrderBuilder, + defaultIncludeBuilder + ) + { } + } +} \ No newline at end of file diff --git a/Controllers/XFileRepositoryProviderController.cs b/Controllers/XFileRepositoryProviderController.cs new file mode 100644 index 0000000..5842780 --- /dev/null +++ b/Controllers/XFileRepositoryProviderController.cs @@ -0,0 +1,35 @@ +using System; +using System.Linq; +using Microsoft.EntityFrameworkCore.Query; +using Microsoft.Extensions.Logging; +using xCommons.Configurations; +using xCommons.Providers; +using xIdentityService.Interfaces; +using xFileService.Controllers; +using xFileService.Interfaces.Entities; +using xFileService.Models.Entities; + +namespace xServices.Controllers +{ + public class XFileRepositoryProviderController : XFileRepositoryProviderControllerBase + { + public XFileRepositoryProviderController( + ILogger logger, + XAppConfiguration appConfiguration, + IXIdentityProvider identityProvider, + XValidationProvider validationProvider, + IXFileRepositoryProvider provider, + Func, IOrderedQueryable> defaultOrderBuilder = null, + Func, IIncludableQueryable> defaultIncludeBuilder = null + ) : base( + logger, + appConfiguration, + identityProvider, + validationProvider, + provider, + defaultOrderBuilder, + defaultIncludeBuilder + ) + { } + } +} \ No newline at end of file diff --git a/Controllers/XFileServiceController.cs b/Controllers/XFileServiceController.cs new file mode 100644 index 0000000..6d94316 --- /dev/null +++ b/Controllers/XFileServiceController.cs @@ -0,0 +1,32 @@ +using System; +using System.Linq; +using Microsoft.EntityFrameworkCore.Query; +using Microsoft.Extensions.Logging; +using xCommons.Configurations; +using xCommons.Providers; +using xFileService.Controllers; +using xFileService.Interfaces.Dtos; +using xFileService.Models.Entities; + +namespace xServices.Controllers +{ + public class XFileServiceController : XFileServiceControllerBase + { + public XFileServiceController( + ILogger logger, + XAppConfiguration appConfiguration, + XValidationProvider validationProvider, + IXFileRepositoryService repositoryService, + Func, IOrderedQueryable> defaultOrderBuilder = null, + Func, IIncludableQueryable> defaultIncludeBuilder = null + ) : base( + logger, + appConfiguration, + validationProvider, + repositoryService, + defaultOrderBuilder, + defaultIncludeBuilder + ) + { } + } +} \ No newline at end of file diff --git a/Controllers/XFileServiceProviderController.cs b/Controllers/XFileServiceProviderController.cs new file mode 100644 index 0000000..ec9846a --- /dev/null +++ b/Controllers/XFileServiceProviderController.cs @@ -0,0 +1,35 @@ +using System; +using System.Linq; +using Microsoft.EntityFrameworkCore.Query; +using Microsoft.Extensions.Logging; +using xCommons.Configurations; +using xCommons.Providers; +using xIdentityService.Interfaces; +using xFileService.Controllers; +using xFileService.Interfaces.Dtos; +using xFileService.Models.Entities; + +namespace xServices.Controllers +{ + public class XFileServiceProviderController : XFileServiceProviderControllerBase + { + public XFileServiceProviderController( + ILogger logger, + XAppConfiguration appConfiguration, + IXIdentityProvider identityProvider, + XValidationProvider validationProvider, + IXFileServiceProvider provider, + Func, IOrderedQueryable> defaultOrderBuilder = null, + Func, IIncludableQueryable> defaultIncludeBuilder = null + ) : base( + logger, + appConfiguration, + identityProvider, + validationProvider, + provider, + defaultOrderBuilder, + defaultIncludeBuilder + ) + { } + } +} \ No newline at end of file diff --git a/DI/XDIHelperExtension.cs b/DI/XDIHelperExtension.cs index 9b45139..1bb73d8 100644 --- a/DI/XDIHelperExtension.cs +++ b/DI/XDIHelperExtension.cs @@ -6,6 +6,7 @@ using Microsoft.Extensions.DependencyInjection; using xCommons.Extensions; using xDataService.DI; using xDataService.Models; +using xFileService.DI; using xIdentityService.DI; using xMessageService.DI; using xPushService.DI; @@ -199,6 +200,12 @@ namespace xServices.DI app.UseXTagService( isDevelopmentEnvironment: isDevelopmentEnvironment ); + + // + // Using File Service ... + app.UseXFileService( + isDevelopmentEnvironment: isDevelopmentEnvironment + ); } // @@ -305,6 +312,13 @@ namespace xServices.DI lifeTime: lifeTime, repositoryType: xDataService.Constants.XRepositoryType.EF ); + + // + // Register File Service ... + services.AddXFileService( + lifeTime: lifeTime, + repositoryType: xDataService.Constants.XRepositoryType.EF + ); } #endregion } diff --git a/Databases/XApiDbContext.cs b/Databases/XApiDbContext.cs index f848ef3..69374d9 100644 --- a/Databases/XApiDbContext.cs +++ b/Databases/XApiDbContext.cs @@ -2,8 +2,10 @@ using Microsoft.EntityFrameworkCore; using xDataService.Configuration; using xDataService.Db; using xDataService.Providers; +using xFileService.Providers; using xServices.Models.Entities; using xStringService.Providers; +using xTagService.Providers; // using xStringService.Models.Entities; namespace xServices.Databases @@ -28,7 +30,11 @@ namespace xServices.Databases options, config, dynamicEntityHandlers, - new string[] { nameof(XStringEntityRegisterar) } + new string[] { + nameof(XTagEntityRegisterar), + nameof(XFileEntityRegisterar), + nameof(XStringEntityRegisterar), + } ) { } diff --git a/xServices.csproj b/xServices.csproj index 677b03e..0dca8eb 100644 --- a/xServices.csproj +++ b/xServices.csproj @@ -35,6 +35,7 @@ +