我正在尝试从创建的表中填充数据,该表中aspnetdb.mdf
存储有游戏数据,该表具有uniqueidentifier
用户UserId
Asp Membership UserId
。我想使用 a 从表中选择用户数据SqlDataSource
并将其填充到DataGridView
.
我已经阅读了一个又一个线程和 MSDN 文档,而对于我的生活,我无法让这个小丑工作。DataGridView
甚至没有显示,只是一个空白屏幕。在设计器中,我可以看到我不想选择的列。这是代码。如果有人有想法、答案或任何东西,我将不胜感激。
我尝试过切换参数数据类型以及我能想到的任何东西,但这不起作用
在后面的代码中:
protected void userGameData_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
MembershipUser User = Membership.GetUser();
object UserGUID = User.ProviderUserKey;
userGameData.SelectParameters["UserId"].DefaultValue = UserGUID.ToString();
}
在 aspx 中
<form id="frm" runat="server">
<asp:SqlDataSource ID="userGameData" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT [cycleday], [playerwins], [housewins], [gametype], [gamedate], [phase] FROM [GameData] WHERE ([UserId] = @UserId)" OnSelecting="userGameData_Selecting">
<SelectParameters>
<asp:Parameter Name="UserId" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
<asp:GridView ID="rawGameResults" runat="server" AutoGenerateColumns="False" DataSourceID="userGameData">
<Columns>
<asp:BoundField DataField="cycleday" HeaderText="cycleday" SortExpression="cycleday" />
<asp:BoundField DataField="playerwins" HeaderText="playerwins" SortExpression="playerwins" />
<asp:BoundField DataField="housewins" HeaderText="housewins" SortExpression="housewins" />
<asp:BoundField DataField="gametype" HeaderText="gametype" SortExpression="gametype" />
<asp:BoundField DataField="gamedate" HeaderText="gamedate" SortExpression="gamedate" />
<asp:BoundField DataField="phase" HeaderText="phase" SortExpression="phase" />
</Columns>
</asp:GridView>
</form>