From 32adfbc8d06709e028b10101844a0560aa76974b Mon Sep 17 00:00:00 2001 From: Hadi Khazaee Asl Date: Thu, 28 May 2026 16:17:25 +0330 Subject: [PATCH] last ... --- Interfaces/IXBaseReferenced.cs | 40 +++++++++++++++--------- Interfaces/IXBaseReferencedController.cs | 18 ++++++++++- 2 files changed, 43 insertions(+), 15 deletions(-) diff --git a/Interfaces/IXBaseReferenced.cs b/Interfaces/IXBaseReferenced.cs index 0888c78..62cfdf8 100644 --- a/Interfaces/IXBaseReferenced.cs +++ b/Interfaces/IXBaseReferenced.cs @@ -1,16 +1,19 @@ using System; using System.Collections; +using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using xDataService.Models; using xIdentityModels.Models; +using xModels.Base; namespace xIdentityService.Interfaces { /// /// a Referenced Service is a Service which can Referenced to other Items ... /// - public interface IXBaseReferenced + public interface IXBaseReferenced + where TEntity : XBaseEntity { /// /// Get Reference Identifier for Specified Provider and Specified Item ... @@ -18,9 +21,9 @@ namespace xIdentityService.Interfaces /// /// /// - string GetIdentifier( + string GetIdentifier( string providedFor, - TKey forProvidedId + TReferenceKey forProvidedId ); /// @@ -31,10 +34,10 @@ namespace xIdentityService.Interfaces /// /// /// - Task IsProvidedFor( + Task IsProvidedFor( string providedFor, - TKey forProvidedId, - Guid id, + TReferenceKey forProvidedId, + TKey id, CancellationToken cancellationToken = default ); @@ -49,10 +52,10 @@ namespace xIdentityService.Interfaces /// /// /// - Task AddReference( + Task AddReference( string providedFor, - TKey forProvidedId, - Guid id, + TReferenceKey forProvidedId, + TKey id, int forIndex = 0, XUserClaimsInfoDto userInfo = null, string connectionId = null, @@ -70,19 +73,28 @@ namespace xIdentityService.Interfaces /// /// /// - Task RemoveReference( + Task RemoveReference( string providedFor, - TKey forProvidedId, - Guid id, + TReferenceKey forProvidedId, + TKey id, int forIndex = 0, XUserClaimsInfoDto userInfo = null, string connectionId = null, CancellationToken cancellationToken = default ); + /// + /// Get Specified References ... + /// + /// + /// + /// + /// + /// Task>> GetReferences( - Guid id, - + string providedFor, + TKey id, + CancellationToken cancellationToken = default ); } } \ No newline at end of file diff --git a/Interfaces/IXBaseReferencedController.cs b/Interfaces/IXBaseReferencedController.cs index f607a55..dc28c17 100644 --- a/Interfaces/IXBaseReferencedController.cs +++ b/Interfaces/IXBaseReferencedController.cs @@ -1,6 +1,8 @@ +using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; +using xDataService.Models; using xModels.Base; namespace xIdentityService.Interfaces @@ -58,6 +60,20 @@ namespace xIdentityService.Interfaces [FromQuery] object forProvidedId, [FromQuery] int forIndex = 0, CancellationToken cancellationToken = default - ); + ); + + /// + /// Retrieve References of Specified Itemfor providedFor ... + /// + /// + /// + /// + /// + [HttpGet("{id}/References")] + Task>>> GetReferences( + [FromRoute] TKey id, + [FromQuery] string providedFor, + CancellationToken cancellationToken = default + ); } } \ No newline at end of file