DataGridView + SqlData源疯狂

时间:2013-05-28 00:31:00

标签: asp.net datagridview sqldatasource

我正在尝试从aspnetdb.mdf中创建的表中填充数据,该表中存储有游戏数据,其中uniqueidentifierUserId,即用户Asp成员资格{{ 1}}。我想使用UserId从表中选择用户数据,并将其填充到SqlDataSource

我已经阅读了线程和MSDN文档之后的线程,并且对于我的生活,我无法让这个小丑工作。 DataGridView甚至没有显示,只是一个空白屏幕。在设计器中,我可以看到我不想选择的列。这是代码。如果有人有想法,回答或任何事情,我将非常感激。

我已尝试切换参数数据类型以及我能想到的任何内容,但这不起作用

在代码背后:

DataGridView

在aspx中

protected void userGameData_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
    MembershipUser User = Membership.GetUser();
    object UserGUID = User.ProviderUserKey;

    userGameData.SelectParameters["UserId"].DefaultValue = UserGUID.ToString();

}

1 个答案:

答案 0 :(得分:0)

也许绑定不能从标记中运行,我会从代码隐藏

尝试
   string sql = "SELECT [cycleday], [playerwins], [housewins], [gametype], [gamedate], [phase] FROM [GameData] WHERE UserId = (SELECT [UserId] FROM aspnet_users WHERE UserName = '" & User.Identity.Name & "')";
   using (SqlConnection myConnection = new SqlConnection(connectionString))
   {
     using (SqlCommand myCommand = new SqlCommand(sql, myConnection))
     {
       myConnection.Open();
       using (SqlDataReader myReader = myCommand.ExecuteReader())
       {
         DataTable myTable = new DataTable();
         myTable.Load(myReader);
         myConnection.Close();

         YourDataGridView.DataSource = myTable;
         YourDataGridView.DataBind();
       }
     }
   }

connectionString设置为您在项目中使用的CS:)