2015-10-25 18 views
-1

我正在用.net創建一個在線書店,並且我有一箇中繼器問題。我正在顯示所有與中繼器沒有問題的書籍,但我想要顯示比平均銷售記錄更多的書籍。我在數據庫中有一個'BookSales'屬性,它保存了一本書的多少版本。我利用這個平均值與此代碼在codebehid:使用中繼器在哪裏條件

ETicaretEntities1 entity = new ETicaretEntities1(); 
     var salesAverage = entity.BookTable.Average(sales => sales.BookSales);    
     float satisOrtalama = float.Parse(salesAverage.ToString()); 

「satisOrtalama」擁有真正的平均浮沒有problem.Here是我的書顯示視點側:

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="EntityDataSource1"> 
      <ItemTemplate> 
       <div class="templatemo_product_box"> 
        <h1>EN ÇOK SATANLAR</h1> 
        <img src="<%#Eval("BookPicture") %>" alt="image" /> 
        <div class="product_info"> 
         <h2><%#Eval("BookName") %></h2> 
         <%#Eval("BookAuthor") %><br /><br /> 
         <h3><%#Eval("BookPrice") %> TL</h3> 
        <div class="buy_now_button"> 
         <a href="subpage.html" runat="server">Sepete Ekle</a> 
        </div> 
        </div> 
       </div>  
      </ItemTemplate> 
     </asp:Repeater> 

例如,如果平均爲1,6比我想要顯示哪本書的'BookSales'屬性2和更多。

+0

如果你的數據源是一個數據集,你可以使用DataView的Filter屬性來根據你的計算平均值過濾數據嗎? – ConnorsFan

回答

0

我認爲你可以在綁定你的數據之前使用額外的Linq表達式。並綁定你的中繼器與新的集合。我認爲這可能是工作:

var BookSalesMoreThan2=entity.BookTable.Where(p=>p.BookSales>(int)Math.Round(satisOrtalama,0));