1
List<Invaders> invadersShooting = new List<Invaders>();
Invaders invaderA=new Invaders();
try
{
var invaderByLocationX = from invadersSortByLocation in invaders
group invadersSortByLocation by invadersSortByLocation.Location.Y
into invaderGroup
orderby invaderGroup.Key
select invaderGroup;
if (invaderByLocationX != null)
{
invadersShooting = invaderByLocationX.Last().ToList();// it is being throwing constantly here.. How can i prevent it from being thrown
invaderA = invadersShooting[r.Next(0, invadersShooting.Count)];
if (r.Next(5) < 4 - randomShot)
{
Invadershots.Add(new Shot(invaderA.Location, Direction.DOWN, gameBoundaries, WEAPON.DEFAULT, isWeapon));
}
}
}
catch (Exception e)
{ }
}
我如何防止發生錯誤?我怎樣才能使程序檢查invaderByLocationX是空的?導致它是空序列,因此拋出異常:(出現InvalidOperationException(不含元素
您可以做的一件事是在Visual Studio中的「var invaderByLocationX」旁邊設置一個斷點。如果您的應用程序在調試模式下運行,它有助於瞭解代碼中發生了什麼。 – 2011-04-17 10:03:46
我知道發生了什麼事。它是空的..我需要防止Last()方法被應用,如果它是空的! – 2011-04-17 10:06:03