- 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)
25 lines
652 B
C#
25 lines
652 B
C#
using CsvHelper.Configuration.Attributes;
|
|
|
|
namespace SharepointToolbox.Core.Models;
|
|
|
|
public class BulkSiteRow
|
|
{
|
|
[Name("Name")]
|
|
public string Name { get; set; } = string.Empty;
|
|
|
|
[Name("Alias")]
|
|
public string Alias { get; set; } = string.Empty;
|
|
|
|
[Name("Type")]
|
|
public string Type { get; set; } = string.Empty; // "Team" or "Communication"
|
|
|
|
[Name("Template")]
|
|
public string Template { get; set; } = string.Empty;
|
|
|
|
[Name("Owners")]
|
|
public string Owners { get; set; } = string.Empty; // comma-separated emails
|
|
|
|
[Name("Members")]
|
|
public string Members { get; set; } = string.Empty; // comma-separated emails
|
|
}
|