Итак, я получаю этот список из базы данных в DataLayer.cs:
public List<Character> ChooseChar(int userid)
{
List<Character> CharacterList = new List<Character>();
var showCharacter = from c in dbConnection.Character
where c.UserID == userid
select c;
foreach(var a in showCharacter)
{
CharacterList.Add(a);
}
return CharacterList;
}
У меня есть это в BusinessLayer.cs:
public int userid { get; }
public List<Character> ChooseChar(int userid)
{
return DataLayer.Instance.ChooseChar();
}
У меня есть это в программе. cs:
Console.WriteLine("This is the last of characters that are owned by you: ");
List<Character> chars = BusinessLayer.Instance.ChooseChar();
foreach(var character in JoinLists)
{
if (character._number == chars.userid)
Console.WriteLine(character._type);
}
foreach (Character c in chars)
{
Console.WriteLine(c.Health);
}
Я получаю сообщение об ошибке в строке: if (character._number == chars.userid)
error: не содержит определения и не доступен метод расширения, принимающий первый аргумент может быть найден тип (вам не хватает директивы using или ссылки на сборку?)
Я пытаюсь получить символы, которые есть в chars.userid, и сопоставить их с индексом из этого:
List<Game> JoinLists = new List<Game>();
JoinLists.Add(new Game(1, "Elf", 6));
JoinLists.Add(new Game(2, "Angel", 10));
JoinLists.Add(new Game(3, "Demon", 10));
JoinLists.Add(new Game(4, "Wizard", 9));
JoinLists.Add(new Game(5, "Undead", 7));
JoinLists.Add(new Game(6, "Vampire", 9));
JoinLists.Add(new Game(7, "Troll", 6));
public int _number { get; }
public string _type { get; }
public int _strength;
public Game(int charNumber, string charType, int strength)
{
this._number = charNumber;
this._type = charType;
this._strength = strength;
}
public override string ToString()
{
return $"{_type} {_strength}";
}
Есть идеи, пожалуйста?