Набор элементов в списке
Эй я делаю систему сохранения которая сохраняет прогресс моего 20 клиента в файле json но Прогрессы хранятся в списке и я пытаюсь сохранить их на основе номера клиента
public class User { [JsonProperty("username")] public string Username { get; set; } [JsonProperty("client-progresses")] public int[] ClientProgresses { get; set; } }
public static void SaveProgress(int progress, int clientNumber) { var user = Program.User; user.ClientProgresses[clientNumber] = progress; var json = JsonConvert.SerializeObject(user, Formatting.Indented); var dir = $"{Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Saves")}"; if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } dir = Path.Combine(dir, $"{user.Username}.json"); lock (_fileLocker) { Task.Delay(100); File.WriteAllText(dir, json, new UTF8Encoding(false)); } }
Проблема в том, что список пуст, поэтому я не могу этого сделать.
user.ClientProgresses[clientNumber] = progress;
итак, есть какие-нибудь идеи, как бы я это установил?
Что я уже пробовал:
<pre lang="c#"> public class User { [JsonProperty("username")] public string Username { get; set; } [JsonProperty("client-progresses")] public int[] ClientProgresses { get; set; } }
public static void SaveProgress(int progress, int clientNumber) { var user = Program.User; user.ClientProgresses[clientNumber] = progress; var json = JsonConvert.SerializeObject(user, Formatting.Indented); var dir = $"{Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Saves")}"; if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } dir = Path.Combine(dir, $"{user.Username}.json"); lock (_fileLocker) { Task.Delay(100); File.WriteAllText(dir, json, new UTF8Encoding(false)); } }
Richard Deeming
Удаление содержимого вашего вопроса после того, как на него был дан ответ, - это чрезвычайно грубый.