2017-09-03 2 views
0

Je veux trouver le nombre total d'utilisateurs actifs qui sont membres de la table user dans ma base de données. Mais je reçois une erreur comme ceci:DataBinding: 'System.Data.DataRowView' ne contient pas de propriété portant le nom 'userid'

DataBinding: 'System.Data.DataRowView' ne contient pas une propriété avec le nom 'userid'

Mon code est le suivant:

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1"> 
    <ItemTemplate> 
     <h3><%#Eval("userid") %></h3> 
    </ItemTemplate> 
</asp:Repeater> 
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:aytasarimConnectionString %>" SelectCommand="SELECT COUNT(*) FROM [user]"></asp:SqlDataSource> 

Répondre

1

L'erreur signifie qu'il n'y a pas de colonne nommée userid dans le résultat de votre requête. Et cela a du sens puisque vous ne renvoyez qu'une seule colonne. Et vous ne nommez même pas cette colonne avec AS, donc SQL le fait Expr1 comme nom de colonne.

votre requête doit être

SELECT COUNT(*) AS total_users FROM [user] 

vous pouvez maintenant utiliser le nom de colonne total_users dans le répéteur

<h3><%#Eval("total_users") %></h3>