XDocumentライブラリを使用してXMLドキュメントを読み取り、C#でLINQを使用してリストにクエリを実行しています。匿名のリストを暗黙の変数に返しています。任意のタイプは単純な構造です。何が間違っているのかわかりませんが、これをすでに定義したクラスのリストに戻したいのですが、この匿名タイプをカスタムクラスに変換するときにエラーが発生します。私はこれについて明らかな何かを見逃していますか?ここでは動的型付けを使用したくありません。
public class CustomClass
    {
        public string id { get; set; }
        public int fileName { get; set; }
    }
XDocument optXML = XDocument.Load(pathName);
var optInput = (from item in optXML.Descendants("Group")
                    select new
                    {
                        id = (int)item.Attribute("ID"),
                        fileName = (string)item.Attribute("FileName")
                    }).ToList();
foreach (CustomClass item in optInput)
        {
            Console.WriteLine(item.id);
        }