为什么我在此上出现错误?我想要体裁的ID ...在数据库中,游戏表在体裁表中具有genre_id thats的外键。
public List<Game> GetGames()
{
List<Game> games = new List<Game>();
try
{
conn.Open();
string selectQuery = "select * from game";
MySqlCommand cmd = new MySqlCommand(selectQuery, conn);
MySqlDataReader dataReader = cmd.ExecuteReader();
while (dataReader.Read())
{
string gameNaam = dataReader.GetString("gamenaam");
int gameId = dataReader.GetInt32("game_id");
int genreId = dataReader.GetInt32("genre_id");
Game game = new Game { ID = genreId, game.Genre.ID = genreId, Naam = gameNaam};
games.Add(game);
}
}
catch (Exception e)
{
Console.Write("Ophalen van genres mislukt " + e);
}
finally
{
conn.Close();
}
return games;
}
}
我在这个----->游戏中遇到错误。Genre.ID = genreId
代码类型和游戏:
public class Game
{
public String Naam { get; set; }
public Genre Genre { get; set; }
public int ID { get; set; }
public override string ToString()
{
return String.Format("{0} (id = {1})", Naam, ID);
}
}
public class Genre
{
public string Naam { get; set; }
public bool Verslavend { get; set; }
public int ID { get; set; }
public override String ToString()
{
return String.Format("{0} ({1})", Naam,
Verslavend ? "Verslavend" : "Niet verslavend");
}
}
这是无效的语法:
new Game { ID = genreId, game.Genre.ID = genreId, Naam = gameNaam};
^--- here
game
在这种情况下不存在。您也不能在这样的属性初始化程序中设置子属性。
如果要设置Genre
属性,则必须自行设置。像这样的东西:
new Game {
ID = genreId,
Genre = new Genre {
ID = genreId
},
Naam = gameNaam
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句