중첩 된 격자를 바인딩하기 위해 열거 가능한 항목을 반환하고 싶습니다. 위쪽 모눈에는 장부 제목이 표시되고 중첩 된 모눈에는 해당 장부의 작성자 목록이 표시됩니다.Linq가 IEnumerable를 반환하는 중 <T>
저자 컬렉션
static public Author[] Authors =
{
new Author {FirstName="Johnny", LastName="Good"},
new Author {FirstName="Graziella", LastName="Simplegame"},
new Author {FirstName="Octavio", LastName="Prince"},
new Author {FirstName="Jeremy", LastName="Legrand"}
}
도서 컬렉션
static public Book[] Books =
{
new Book
{
Title="Funny Stories",
Publisher=Publishers[0],
Authors=new[]{Authors[0], Authors[1]},
PageCount=101,
Price=25.55M,
PublicationDate=new DateTime(2004, 11, 10),
Isbn="0-000-77777-2",
Subject=Subjects[0]
},
new Book
{
Title="LINQ rules",
Publisher=Publishers[1],
Authors=new[]{Authors[2]},
PageCount=300,
Price=12M,
PublicationDate=new DateTime(2007, 9, 2),
Isbn="0-111-77777-2",
Subject=Subjects[0]
},
new Book
{
Title="C# on Rails",
Publisher=Publishers[1],
Authors=new[]{Authors[2]},
PageCount=256,
Price=35.5M,
PublicationDate=new DateTime(2007, 4, 1),
Isbn="0-222-77777-2",
Subject=Subjects[0]
},
new Book
{
Title="All your base are belong to us",
Publisher=Publishers[1],
Authors=new[]{Authors[3]},
PageCount=1205,
Price=35.5M,
PublicationDate=new DateTime(2006, 5, 5),
Isbn="0-333-77777-2",
Subject=Subjects[2]
},
new Book
{
Title="Bonjour mon Amour",
Publisher=Publishers[0],
Authors=new[]{Authors[1], Authors[0]},
PageCount=50,
Price=29M,
PublicationDate=new DateTime(1973, 2, 18),
Isbn="2-444-77777-2",
Subject=Subjects[1]
}
};
1) 어떻게 다음 쿼리를 반환 할 수있는 Enumerable에서 메서드를 작성하는 방법?
(내 구현이 잘못 당연히)
public IEnumerable<Book> GetBook()
{
IEnumerable<Book> booklist
= from book in SampleData.Books
select new Book
{
Title = book.Title,
Authors =
from author in SampleData.Authors
where book.Authors == author
select new Author
{
FirstName = author.FirstName
}
};
return booklist;
}
2)가을받은 출력 (중첩 BulletedList가 저자의 이름으로 작성되지 않았습니다).
나는 문제가
where book.Authors == author (checking Types with == operator).
html로 코드
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField HeaderText="Author List">
<ItemTemplate>
<asp:BulletedList ID="BulletedList1" runat="server"
DataSource='<%# Eval("Authors") %>'>
</asp:BulletedList>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Title" HeaderText="Title"
SortExpression="Title" />
</Columns>
</asp:GridView>
에 의심 어떻게 적절한 결과를 얻을 수있는 코딩을 개선하기 위해?