,我發現了以下錯誤的對象:System.InvalidCastException:無法投類型
Unable to cast object of type 'Holo.Virtual.Rooms.Bots.virtualBot' to type 'Holo.Virtual.Rooms.Bots.virtualRoomBot'.
這裏是我的代碼:
foreach (virtualRoomBot roomBot in _Bots.Values) // Exception thrown here
{
if (roomBot.goalX == -1)
continue;
Holo.Virtual.Rooms.Bots.virtualBot包含:
public class virtualBot
{
public virtualBot(int botID)
{
DataRow dRow;
using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
{
dRow = dbClient.getRow("SELECT * FROM roombots WHERE id = '" + botID + "'");
}
*There are values for the db here*
}
}
而且Holo.Virtual.Rooms.Bots.virtualRoomBot包含:
public class virtualRoomBot
{
internal virtualRoomBot(int botID, int roomID, int roomUID,
virtualBot Bot, virtualRoomBotStatusManager statusManager)
{
this.botID = botID;
this.roomID = roomID;
this.roomUID = roomUID;
this.Bot = Bot;
this.statusManager = statusManager;
}
'virtualBot'和'virtualRoomBot'是兩種不同和不相關的類型。你不能直接從一個投向另一個。如果'_Bots.Values'包含一個'virtualBot'類型的對象的集合,那麼你不能把它看作你正在嘗試做的'virtualRoomBot'類型的對象的集合。除此之外,目前還不清楚你想要做什麼或者你在哪裏獲得'_Bots.Values'。 – David