迭代.NET中的匿名类型集合

Nar*_*ana 3 .net c# vb.net loops

我对C#和VB.NET都很好

我有一个函数GetListOfBook,它返回LINQ to SQL结果,该结果具有如下所示的对象集合:

var result = GetListOfBook();

  • Book是Book对象,属性为Title和ISBN,
  • 类别是一个字符串
  • Author是具有Name和ID属性的Author对象.

所以在收藏家里面,它看起来像这样:

所以在"result"集合中,它看起来像这样:

{Book = {Book}, Category = "English", Author = {Author}}
{Book = {Book}, Category = "English", Author = {Author}}
{Book = {Book}, Category = "Web Development", Author = {Author}}
Run Code Online (Sandbox Code Playgroud)

我想迭代集合中的每个项目以获取书名和ISBN,类别和作者姓名.像这样的东西:

foreach (var r in result)
{
    Respone.Write(r.Book.Title, r.Book.ISBN, r.Category, r.Auhtor.Name);
}
Run Code Online (Sandbox Code Playgroud)

目前,我无法迭代收集.谢谢你的任何建议.

更新:

抱歉,添麻烦了.这实际上是有效的.我在代码中发现了拼写错误.

Cod*_*aos 8

您仍然需要使用正确的语法foreach,要求您指定循环变量的类型.由于您无法明确命名,因此您需要使用var哪种方式来推断类型.

foreach (var r in result)
{
    Respone.Write(r.Book.Title, r.Book.ISBN, r.Category, r.Auhtor.Name);
}
Run Code Online (Sandbox Code Playgroud)