如何绑定列表<;字符串>;要在ASP.NET中创建GridView?

如何绑定列表<;字符串>;要在ASP.NET中创建GridView?,asp.net,Asp.net,我正在点击API并将返回的解析数据存储到列表中。目前,我正在列表视图中显示数据。 我无法在网格视图中显示相同的列表。有人能指导我怎么做吗 这是我的aspx.cs代码: protected void Page_Load(object sender, EventArgs e) { ComodityList obj_comodity_in = (ComodityList)Session["comodity_list"]; Label1.Text = ob

我正在点击API并将返回的解析数据存储到
列表中。目前,我正在
列表视图中显示数据。
我无法在
网格视图中显示相同的列表。有人能指导我怎么做吗

这是我的aspx.cs代码:

    protected void Page_Load(object sender, EventArgs e)
    {
        ComodityList obj_comodity_in = (ComodityList)Session["comodity_list"];
        Label1.Text = obj_comodity_in.status_code;
        Label2.Text = obj_comodity_in.count.ToString();

        //ComodityList obj_comodity_in = (ComodityList)Session["comodity_list"];

        List<String> commodity_names = null;
        getComodityNames(out commodity_names, obj_comodity_in);
        ListView1.DataSource = commodity_names;
        ListView1.DataBind();   
    }
    private void getComodityNames(out List<String> commodity_names, ComodityList cl)
    {
        commodity_names = new List<string>();
        foreach (Commodity c in cl.data)
        {
            commodity_names.Add(c.commodity);
            commodity_names.Add(c.state);
            commodity_names.Add(c.market);
            commodity_names.Add(c.Maximum_Price.ToString());
            commodity_names.Add(c.Minimum_Price.ToString());
            commodity_names.Add(c.Modal_Price.ToString());
            commodity_names.Add(c.origin);
            commodity_names.Add(c.unit);
            commodity_names.Add(c.variety);


        }
    }
受保护的无效页面加载(对象发送方,事件参数e)
{
ComodityList obj_comodity_in=(ComodityList)会话[“comodity_list”];
Label1.Text=obj\u comodity\u in.status\u code;
Label2.Text=obj_comodity_in.count.ToString();
//ComodityList obj_comodity_in=(ComodityList)会话[“comodity_list”];
列出商品名称=空;
getComodityNames(输出商品名称,输入对象);
ListView1.DataSource=商品名称;
ListView1.DataBind();
}
私有void getComodityNames(列出商品名称,ComodityList cl)
{
商品名称=新列表();
foreach(cl.数据中的商品c)
{
商品名称。添加(c.商品);
商品名称。添加(c.州);
商品名称。添加(c.市场);
商品名称。添加(c.Maximum_Price.ToString());
商品名称。添加(c.Minimum_Price.ToString());
商品名称。添加(c.Modal_Price.ToString());
商品名称。添加(c.原产地);
商品名称。添加(c.单位);
商品名称。添加(c.品种);
}
}

如果您不想更改API(您仍然希望返回字符串列表)并且需要使用网格,您可以创建一个新类,该类包含您在
商品
中已有的属性,并且只需使用列表字符串数据对该类进行重新水化即可。每个新的“商品”类都可以放入一个新的
列表
,您可以将其绑定到网格

另一方面,最好重新考虑您实际想要实现的目标,然后重新设计API(如果这是一个选项)。

将属性设置为true将对您有所帮助

Default.aspx:

 <asp:GridView ID="GridView1" runat="server" Width="95%" autogeneratecolumns = "false">

Default.aspx.cs:

public partial class _Default : Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        List<string> s = new List<string>() { "a", "b", "c" };
        this.GridView1.DataSource = s;
        this.GridView1.DataBind();
    }
}
public分部类\u默认值:第页
{
受保护的无效页面加载(对象发送方、事件参数e)
{
列表s=新列表({“a”、“b”、“c”});
this.GridView1.DataSource=s;
this.GridView1.DataBind();
}
}

那么,网格的一维数组?这有意义吗?没有意义。。。使用中继器控制?