Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在asp.net c#应用程序中向GridView添加行_C#_Asp.net_Gridview_Client Server_Code Behind - Fatal编程技术网

如何在asp.net c#应用程序中向GridView添加行

如何在asp.net c#应用程序中向GridView添加行,c#,asp.net,gridview,client-server,code-behind,C#,Asp.net,Gridview,Client Server,Code Behind,我已经在这个页面上搜索了很多文章,但找不到适合我的答案 好的,我有两个项目(一个是服务器(主机),一个是客户端)。第一个是ASP.NET空Web应用程序,第二个是ASP.NET Web窗体站点 在我的主机中,我有用于显示实体框架数据库中的用户的代码。在我的客户机中,我有一个表单(至少我正在尝试创建一个),在这里我应该能够显示数据(用户) 显示数据的代码工作正常,因为我以前已经使用过它 但不知何故,我无法为Gridview创建一个代码,它会将数据库中的数据放入我的单元格中 假设ID列将显示用户ID

我已经在这个页面上搜索了很多文章,但找不到适合我的答案

好的,我有两个项目(一个是服务器(主机),一个是客户端)。第一个是ASP.NET空Web应用程序,第二个是ASP.NET Web窗体站点

在我的主机中,我有用于显示实体框架数据库中的用户的代码。在我的客户机中,我有一个表单(至少我正在尝试创建一个),在这里我应该能够显示数据(用户)

显示数据的代码工作正常,因为我以前已经使用过它

但不知何故,我无法为Gridview创建一个代码,它会将数据库中的数据放入我的单元格中

假设ID列将显示用户ID…名称列将显示用户名

我已经设置了服务参考

这是我到目前为止编写的代码,但它给了我一些错误

GridView1.DataSource = null;
    GridView1.Refresh();
    ServiceReference1.mojWebServiceSoapClient client = new ServiceReference1.mojWebServiceSoapClient();
    var userList = client.getUsers();
    foreach (var user in userList)
    {
        DataTable dt = new DataTable();
        DataColumn column = new DataColumn();
        if (dt.Columns.Count == 0)
        {
            dt.Columns.Add("ID", typeof(Int32));
            dt.Columns.Add("Name", typeof(string));
            dt.Columns.Add("Last Name", typeof(string));
        }

        DataRow row = dt.NewRow();
        row[0] = user.userID.ToString();
        row[1] = user.Name;
        row[2] = user.lName;
        dt.Rows.Add(row);
        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
你们能帮我修一下吗?我非常感谢您的任何意见


顺便说一句,该代码可以工作,但它只显示1个用户,而不是所有(5个)您在for循环中重复绑定,这在您的情况下是不正确的。您应该首先创建一个DataTable,然后在for循环中向其添加用户。因此,以下内容应满足您的nedd要求:

GridView1.DataSource = null;
GridView1.Refresh();
ServiceReference1.mojWebServiceSoapClient client = new ServiceReference1.mojWebServiceSoapClient();
var userList = client.getUsers();
DataTable dt = new DataTable();
DataColumn column = new DataColumn();
dt.Columns.Add("ID", typeof(Int32));
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Last Name", typeof(string));
foreach (var user in userList)
{
    DataRow row = dt.NewRow();
    row[0] = user.userID.ToString();
    row[1] = user.Name;
    row[2] = user.lName;
    dt.Rows.Add(row);
}
GridView1.DataSource = dt;
GridView1.DataBind();

希望这有帮助

是的,它确实有效。非常感谢您,先生!