人。 リストから別のファイルでデータを取得するにはどうすればよいですか?私はこの方法を試したが、それが動作しないのです。C#変数のリスト
CharacterController.cs
public class CharacterController
{
public static List<Character> Characters { get; set; }
public static async Task LoadCharacterData(Client player)
{
var filter = new BsonDocument("NameOfTable", player.Name);
var characters = await DatabaseManager.Characters.Find(filter).ToListAsync();
List<Character> Characters = new List<Character>();
foreach (var character in characters)
{
Characters.Add(new Character
{
Name = character.Name,
Surname = character.Surname
}
);
}
Console.WriteLine("TEST: " + Characters[0].Name + Characters[0].Surname); //It's working
}
を別のファイルではこの特定のケースで
public void OnPlayerDownloaded(Client player)
{
CharacterController.LoadCharacterData(player);
Console.WriteLine("TEST: " + CharacterController.Characters[0].Name + CharacterController.Characters[0].Surname); // It's don't working
}
"それは働かない"とはどういう意味ですか? 'LoadCharacterData'が' Characters'を初期化していないので(非同期メソッドであることに注意してください)、null参照例外が発生している可能性があります。その場合、別のファイルで定義されたフィールドにアクセスすることに成功しています。ところで、 'List'はスレッドセーフではありません。 –
Theraot
よろしくお願いいたします。私はエラーがありました: System.NullReferenceException:オブジェクト参照がオブジェクトのインスタンスを指していません。 あなたはそうです。 あなたはリメイクするのに最善の方法をアドバイスしますか? – Joseph