LINQ:IEnumerable [AnonymousType]を宣言する方法は?
これは私の関数です: private IEnumerable<string> SeachItem(int[] ItemIds)
{
using (var reader = File.OpenText(Application.StartupPath + @"\temp\A_A.tmp"))
{
var myLine = from line in ReadLines(reader)
where line.Length > 1
let id = int.Parse(line.Split('\t')[1])
where ItemIds.Contains(id)
let m = Regex.Match(line, @"^\d+\t(\d+)\t.+?\t(item\\[^\t]+\.ddj)")
where m.Success == true
select new { Text = line, ItemId = id, Path = m.Groups[2].Value };
return myLine;
}
}
"myLine"はIEnumerable [文字列]ではないため、コンパイルエラーが発生し、IEnumerableの記述方法がわかりません[匿名]
"暗黙のうちに型 'System.Collections.Generic.IEnumerable [AnonymousType#1]'を 'System.Collections.Generic.IEnumerable [string]'に変換します。 ""
「新しい{...}を選択」と言うと、AnonymousTypeを作成しました。 –
いいえ、IEnumerableを返し、CastByExampleトリックを使用することもできます。 –