2012-11-28 20 views
7

मैं निम्नलिखित कोड है:में asp.net ग # सूचीदृश्य करने के लिए एक सूची <> बाइंडिंग

<asp:ListView ID="lvDetail" runat="server"> 
        <ItemTemplate> 
         <tr> 
          <td><%# Eval("ShpNo")%></td> 
          <td><%# Eval("QtyShp")%></td> 
          <td><%# Eval("NumPallets")%></td> 
         </tr> 
        </ItemTemplate> 
        <LayoutTemplate> 
         <table id="tbl1" runat="server"> 
          <tr id="tr1" runat="server"> 
           <td id="td1" runat="server">ShpNo</td> 
           <td id="td2" runat="server">QtyShp</td> 
           <td id="td3" runat="server">NumPallets</td> 
          </tr> 
          <tr id="ItemPlaceholder" runat="server"> 
          </tr> 
         </table> 
        </LayoutTemplate> 
       </asp:ListView> 

और पीछे कोड में:

List<Visibility> ListVisibility = new List<Visibility>(); 
    public class Visibility 
    { 
     public int ShpNo; 
     public int QtyShp; 
     public int NumPallets; 
     public string ETA;    
    } 

List<Visibility> items = ListVisibility.FindAll(VisibItem => VisibItem.ETA == Calendar1.SelectedDate.ToShortDateString()); 
     lvDetail.DataSource = items;    
     lvDetail.DataBind(); 

लेकिन मैं निम्नलिखित त्रुटि हो रही है जब बंधन:

<td><%# Eval("ShpNo")%></td>

DataBinding: 'AIS.WebVisibility+Visibility' does not contain a property with the name 'ShpNo'.

सूची से सही मूल्य प्राप्त करने के लिए मुझे क्या करने की आवश्यकता है?

+3

खैर त्रुटि संदेश में कहा गया है यह पता नहीं कर सकते हैं उदाहरण के लिए, के बजाय, फ़ील्ड हैं, "ShpNo" * संपत्ति *। शायद ऑटो-बाइंडर सार्वजनिक * फ़ील्ड * पर काम नहीं करता है, जैसा आपके पास है। एक संपत्ति इस तरह दिखती है: 'सार्वजनिक int ShpNo {get; सेट; } ' –

+1

धन्यवाद कॉरी :) – Somebody

उत्तर

11

आप गुण

public class Visibility 
{ 
    public int ShpNo { get; set; } 
    public int QtyShp { get; set; } 
    public int NumPallets { get; set; } 
    public string ETA { get; set; } 
} 

कोशिश है कि

+1

बहुत बढ़िया !! धन्यवाद !, 9 मिनट आपके उत्तर को स्वीकार करने के लिए – Somebody