Skip to content

Commit 4a842ee

Browse files
committed
SettingsSourceGenerationContextの追加
1 parent fb61264 commit 4a842ee

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

LoopMusicPlayer/DataClass/Settings.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using System.IO;
44
using System.Reflection.PortableExecutable;
55
using System.Text.Json;
6+
using System.Text.Json.Serialization;
67

78
namespace LoopMusicPlayer.DataClass;
89

@@ -16,7 +17,7 @@ public static Settings Load()
1617
{
1718
try
1819
{
19-
Settings? settings = JsonSerializer.Deserialize<Settings>(File.ReadAllBytes(_settingPath));
20+
Settings? settings = JsonSerializer.Deserialize<Settings>(File.ReadAllBytes(_settingPath), SettingsSourceGenerationContext.Default.Settings);
2021
if (settings is not null)
2122
return settings;
2223
}
@@ -32,7 +33,7 @@ public void Save()
3233
{
3334
try
3435
{
35-
File.WriteAllBytes(_settingPath, JsonSerializer.SerializeToUtf8Bytes(this));
36+
File.WriteAllBytes(_settingPath, JsonSerializer.SerializeToUtf8Bytes(this, SettingsSourceGenerationContext.Default.Settings));
3637
}
3738
catch (Exception e)
3839
{
@@ -115,3 +116,9 @@ public enum ETimeFormat
115116
}
116117
}
117118
}
119+
120+
[JsonSourceGenerationOptions(WriteIndented = false)]
121+
[JsonSerializable(typeof(Settings))]
122+
internal partial class SettingsSourceGenerationContext : JsonSerializerContext
123+
{
124+
}

0 commit comments

Comments
 (0)