ゲームオブジェクトのリストをゲームオブジェクトのスクリプト内の変数に応じてソートしたいと考えています。
以下のソースを書いたのですが「The object of type 'GameObject' has been destroyed but you are still trying to access it.」エラーが出て困っています。
(もうそれデストロイ済みだよエラー)
エラーはスクリプトをGetComponent<>()で呼び出した段階で出ます。

修正方法か、あるいはより適切なソート方法をご存じの方がいたら教えて下さい。

//List<GameObject>型のMap_TrophyをスクリプトItem_BodyのName変数の順で並べ替えます。
//※string型で一旦宣言しているのは別の要素に応じて比較する文字列を変えたいからです。

Map_Trophy.Sort(delegate(GameObject G01, GameObject G02){
string a=G01.GetComponent<Item_Body>().Name;
string b=G02.GetComponent<Item_Body>().Name;

return string.Compare(a, b);
});