使用Array调用SQL的ASP.NET Repeater/ListView

本文关键字:NET Repeater ListView ASP Array 调用 SQL 使用 | 更新日期: 2023-09-27 18:27:57

我正在制作一个愿望列表,将listingID作为id1、id2、id5等保存到SQL中。

我正在尝试使用数组对SQL进行listingID=id1,listingID=id2…调用,以便它在一个页面上显示所有列表。

我可以将Repeater/ListView与Array一起使用吗?

很抱歉,如果这不是很清楚,我对此很陌生。我已经做了一个小时左右的研究,但对我来说并不奏效

感谢您的考虑。

使用Array调用SQL的ASP.NET Repeater/ListView

如果您创建一个Listing类,该类包含您希望在中继器/列表视图/网格视图中显示的信息,则会更好,如下所示:

public class Listing
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    // And whatever else you want to display to the user and that exists in the database
}

现在,您可以构建一个List<Listing>,用作数据绑定ASP.NET控件(中继器、列表视图、网格视图等)的数据源,如下所示:

var listOfListings = new List<Listing>();
listOfListings = GetListingsFromDatabase();
GridView.DataSource = listOfListings;
GridView.DataBind();

您可以像这样将数组绑定到datagridview

顺便说一句,你的网格视图会像这个

<asp:GridView ID="gView" runat="server" AutoGenerateColumns="false">
    <Columns>
        <asp:BoundField DataField="ValueToBind" />
    </Columns>
</asp:GridView>

制作一个类

public class ValuesToBind
{
    public string ValueToBind { get; set; }
}
List<ValuesToBind> lstToBind = (
    from ar in yourArray
    select new ValuesToBind
    {
        ValueToBind = ar
    }).ToList();
gView.DataSource = lstTobind;
gView.DataBind();

Yes可以使用

    protected void Page_Load(object sender, EventArgs e)
    {
        string test = "s1,s2,s3";
        string[] StrArray = test.Split(',');
        if (!Page.IsPostBack)
        {
            rptTest.DataSource = StrArray;
            rptTest.DataBind();
        }
    }

    <asp:Repeater runat="server" ID="rptTest"> 
        <ItemTemplate>
        listingID = <%# Container.DataItem %>
        </ItemTemplate>
    </asp:Repeater>