Buduję witrynę ASP.NET C# i mam listę rozwijaną, którą wiążę do listy obiektów, które utworzyłem . Kod, który wiąże się z dropdownlist wygląda następująco:"myObject" nie zawiera właściwości o nazwie "ID" (nie literówka).
protected void PopulateDropdownWithObjects(DropDownList dropdownlist, List<myObject>() myObjects)
{
dropdownlist.DataValueField = "ID";
dropdownlist.DataTextField = "Name";
dropdownlist.DataSource = myObjects; // my code fails here
dropdownlist.DataBind();
}
Jednak, gdy uderza 3. linia wewnątrz metody, jest wyjątek:
DataBinding: 'myObject' does not contain a property with the name 'ID'.
Mogę jednak wyraźnie zobaczyć myObject. wartość identyfikatora podczas debugować: mogę do niego dostęp w okienku bezpośrednim, to jest publiczna, to nie jest pusty, a ja orkisz to poprawnie i z odpowiednim przypadku:
public class myObject
{
public int ID; // see? "ID" is right here!
public string Name;
public myObject(
int id,
string name
)
{
this.ID = id;
this.Name = name;
}
}
Czy jest coś innego, co może powodować t jego błąd?
NIE, ja nie widzę * oferta * nazwa identyfikatora. Widzę identyfikator nazwy pola. Być może musisz ponownie ocenić swoją definicję "faktu";) –
Dla mnie to pytanie było o wiele jaśniejsze niż to, które "duplikuje"! – Jay1b