public static void Serialize <T>( [NotNull] this FileInfo fileInfo, [CanBeNull] T obj, DuplicateFileResolution duplicateFileResolution = DuplicateFileResolution.Error, JsonSerializerSettings?settings = default ) { switch (duplicateFileResolution) { case DuplicateFileResolution.Error: fileInfo.SerializeCautiously(obj, settings); break; case DuplicateFileResolution.Overwrite: fileInfo.SerializeForcefully(obj, settings); break; case DuplicateFileResolution.Backup: fileInfo.SerializeSafely(obj, settings); break; default: throw BEnum.InvalidEnumArgumentException(nameof(duplicateFileResolution), duplicateFileResolution); } Console.WriteLine($"💾 → {fileInfo.ToUri()}"); }
public ISaveFile <TData> Save(DuplicateFileResolution duplicateFileResolution, JsonSerializerSettings jsonSettings = default) { File.Serialize(Data, duplicateFileResolution); return(this); }