コード例 #1
0
        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()}");
        }
コード例 #2
0
 public ISaveFile <TData> Save(DuplicateFileResolution duplicateFileResolution, JsonSerializerSettings jsonSettings = default)
 {
     File.Serialize(Data, duplicateFileResolution);
     return(this);
 }