20

First I have a repeater, and I'm outputting a property. I have tried both

<%#Eval("Link")%>

and

<%#DataBinder.Eval(Container.DataItem, "Link")%>

I have a simple class

public class NewsItem  
{  
    public string Link = "";  
    public string Title = "";  
}  

I populate a List news with with a simple for... each, and then...

repeater.DataSource = news;
repeater.DataBind();

and I get "DataBinding: 'index+NewsItem' does not contain a property with the name 'Link'

Chris
  • 3,328
  • 1
  • 32
  • 40
Russell Steen
  • 6,494
  • 6
  • 38
  • 56

1 Answers1

36

You have created fields, not properties

To turn them into properties, adjust your code like this

public class NewsItem  
{  
     public string Link { get; set; }
     public string Title { get; set; }              

     public NewsItem()
     {
           this.Link = string.Empty;
           this.Title = string.Empty;
     }
}  
havardhu
  • 3,576
  • 2
  • 30
  • 42