- Install CsvHelper 33.1.0 and Microsoft.Graph 5.74.0 (main + test projects) - Add 14 core model/enum files (BulkOperationResult, BulkMemberRow, BulkSiteRow, TransferJob, FolderStructureRow, SiteTemplate, SiteTemplateOptions, TemplateLibraryInfo, TemplateFolderInfo, TemplatePermissionGroup, ConflictPolicy, TransferMode, CsvValidationRow) - Add 6 service interfaces (IFileTransferService, IBulkMemberService, IBulkSiteService, ITemplateService, IFolderStructureService, ICsvValidationService) - Add BulkOperationRunner with continue-on-error and cancellation support - Add BulkResultCsvExportService stub (compile-ready) - Add test scaffolds: BulkOperationRunnerTests (5 passing), BulkResultCsvExportServiceTests (2 passing), CsvValidationServiceTests (6 skipped), TemplateRepositoryTests (4 skipped)
23 lines
654 B
C#
23 lines
654 B
C#
using Microsoft.SharePoint.Client;
|
|
using SharepointToolbox.Core.Models;
|
|
using ModelSiteTemplate = SharepointToolbox.Core.Models.SiteTemplate;
|
|
|
|
namespace SharepointToolbox.Services;
|
|
|
|
public interface ITemplateService
|
|
{
|
|
Task<ModelSiteTemplate> CaptureTemplateAsync(
|
|
ClientContext ctx,
|
|
SiteTemplateOptions options,
|
|
IProgress<OperationProgress> progress,
|
|
CancellationToken ct);
|
|
|
|
Task<string> ApplyTemplateAsync(
|
|
ClientContext adminCtx,
|
|
ModelSiteTemplate template,
|
|
string newSiteTitle,
|
|
string newSiteAlias,
|
|
IProgress<OperationProgress> progress,
|
|
CancellationToken ct);
|
|
}
|