Question

J'ai un DropDownList appelé (LDD) à la page ASP.net, je veux que contient des enregistrements LDD d'une table dans la base de données.

Je l'ai fait:

DDL.DataSource = myDataReader

DDL.DataBind()

Mais il me donne (5 dossiers) « le nombre d'enregistrements de la table », mais comme ceci:

System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
Était-ce utile?

La solution

Vous devez définir DataTextField et DataValueField, sinon la liaison de données effectuera .ToString () sur chaque ligne et de le mettre comme point:

DDL.DataSource = myDataReader;
DDL.DataTextField = "[Text column name]";
DDL.DataValueField = "[Value column name]";
DDL.DataBind();

Autres conseils

vous devez définir le texte et les champs clés de la ddl avant que vous DataBind

DDL.DataTextField = "textColumn";
DDL.DataValueField = "textColumn":

Le code: ddl.datasource=reader met tout le contenu présent dans le lecteur (tableau de colonnes de table) comme la principale source de données
Maintenant, comme le montrent les ddl seulement une seule colonne si u besoin d'écrire un morceau de. le code qui indique ddl que quelle colonne il doit afficher
vous écrirez. ddl.textfield= « nom de colonne que vous voulez montrer »; et le nom de ddl.valuefield="column que vous voulez comme une référence pour passer à la base de données ";

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top