Interface ISkillRepository
- Namespace
- Builvero.Application.Interfaces.Repositories
- Assembly
- Builvero.Application.dll
Defines the contract for skill data access operations including retrieval by category, ID, and bulk retrieval.
public interface ISkillRepository
Remarks
This repository interface provides methods for retrieving skill entities. Skills are used to match users with projects based on technical expertise and are organized by category.
Methods
GetByCategoryAsync(SkillCategory?, CancellationToken)
Retrieves all active skills, optionally filtered by category.
Task<List<Skill>> GetByCategoryAsync(SkillCategory? category, CancellationToken cancellationToken = default)
Parameters
categorySkillCategory?Optional skill category filter (e.g., SoftwareEngineering, Design).
cancellationTokenCancellationTokenCancellation token to cancel the operation.
Returns
- Task<List<Skill>>
A list of skills matching the category filter, or all skills if no category is specified.
GetByIdAsync(Guid, CancellationToken)
Retrieves a skill by its unique identifier.
Task<Skill?> GetByIdAsync(Guid id, CancellationToken cancellationToken = default)
Parameters
idGuidThe unique identifier of the skill to retrieve.
cancellationTokenCancellationTokenCancellation token to cancel the operation.
Returns
GetByIdsAsync(List<Guid>, CancellationToken)
Retrieves multiple skills by their unique identifiers.
Task<List<Skill>> GetByIdsAsync(List<Guid> ids, CancellationToken cancellationToken = default)
Parameters
idsList<Guid>The list of unique identifiers of the skills to retrieve.
cancellationTokenCancellationTokenCancellation token to cancel the operation.