使用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一起使用吗?
很抱歉,如果这不是很清楚,我对此很陌生。我已经做了一个小时左右的研究,但对我来说并不奏效
感谢您的考虑。
如果您创建一个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>