2016-05-13 7 views
0

zu binden Ich versuche, den Text (Schlüsselwörter) in der Liste zu suchen, die an den Repeater-Controller binden. Ich habe eine Seitennummerierung mithilfe der Datenliste implementiert. Wenn ich den Text suchen, werde ich die Datenquelle als eine zählen, aber wenn ich das Ergebnis Ansicht auf „Enumeration lieferte keine Ergebnisse“ Fehler kommen und der Repeater wird keinen Wert habenIch bin nicht in der Lage, den gesuchten Text im Repeater in C#

Hier ist mein Code

string authorname = AuthorNames(); 
        string ProdTitle = ProductTitle(); 
        string refno = ProductRefno(); 
        List<Product> ProductList = GetProductDetails(categoryName, refno, ProdTitle, authorname); 
        pageDataSource.DataSource = ProductList; 
        pageDataSource.AllowPaging = true; 
        pageDataSource.PageSize = Convert.ToInt16(ddlPageSize.SelectedValue); 
        pageDataSource.CurrentPageIndex = CurrentPage; 
        lnkbtnNext.Enabled = !pageDataSource.IsLastPage; 
        lnkbtnPrevious.Enabled = !pageDataSource.IsFirstPage; 
        ViewState["totpage"] = pageDataSource.PageCount; 
        repproductlist.DataSource = pageDataSource; 
        repproductlist.DataBind(); 
        DoPaging(); 
        // Int32 value = Convert.ToInt32(ConfigurationManager.AppSettings["PaginationDisplayAt"]); 
        if (ProductList.Count > PaginationDisplayAt) 
        { 
         this.paginationDiv.Visible = true; 
        } 
        else 
        { 
         this.paginationDiv.Visible = false; 
        } 

wird jede Hilfe

+0

wo ist Ihr Versuch, die Liste zu durchsuchen? – Thorarins

Antwort

1

müssen Sie wahrscheinlich erstellen eine neue Liste aus dem Suchergebnis sehr nützlich sein, bevor Sie es binden.

repproductlist.DataSource = pageDataSource.FindAll(x => x.Text.Contains(searchString)).ToList(); 
+0

Ich sende den gesuchten Text an die Datenbank und erhalte das gefilterte Ergebnis von der Datenbank selbst – Navya

+0

ja das ist besser, denke ich – Thorarins

Verwandte Themen