1
這裏是我的中繼器來獲得第一書評:後面我用這樣的事情來獲得的第一次審查LINQ - 如何獲得單()審覈
<asp:Repeater ID="Repeater2" runat="server">
<ItemTemplate>
<asp:Repeater ID="Repeater1" runat="server" DataSource='<%# Eval("Reviews") %>' ItemType="ELibraryModel.Review">
<ItemTemplate>
<div class="new_prod_box">
<div class="new_prod_bg">
<asp:HyperLink ID="HyperLink1" CssClass="thumb" runat="server" ImageUrl='<%# String.Format("../Images/books/{0}.jpg", Item.Id.ToString()) %>' Text='<%# Item.Title %>' NavigateUrl='<%# "../books/bookdetails.aspx?reviewId=" + Item.Id.ToString() %>'></asp:HyperLink>
<a><asp:Label ID="DescriptionLabel" runat="server" Text='<%# Item.Title %>' /></a>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
上的代碼和它的工作原理:
using (ELibraryEntities entities = new ELibraryEntities())
{
var firstBook = (from books in entities.Books.Include("Reviews")
orderby books.Category
select new { books.Reviews }).Take(1);
Repeater2.DataSource = firstBook;
Repeater2.DataBind();
}
如何根據評論ID獲取我想要的評論。
我想是這樣的:
using (ELibraryEntities entities = new ELibraryEntities())
{
var review = (from books in entities.Books.Include("Reviews")
where books.Id == 13
orderby books.Category
select new { books.Reviews }).Single();
Repeater2.DataSource = review;
Repeater2.DataBind();
}
,但它不工作。問題是我無法訪問評論表的ID。 books.Id == 13
屬於書籍表。
我需要更改背後的代碼和中繼器的代碼?
謝謝。
你錯在第一單。 –
爲什麼你不能訪問評論表的ID?我無法得到它。 – Christos
我的意思是我不知道如何訪問它。如果我嘗試:'從entities.Reviews.Include(「Book」)中讀書,那麼我可以訪問它,但'orderby books.Category'變得無法訪問。 – user2969489