我在 asp.net C# 中工作,我很难弄清楚如何解决问题。我有一个包含公司信息的数据库。我想通过以下方式将其发布在网站上:
国家的名字
(如果同一个国家有不止一家公司,则一排显示2套)
公司名称: 标签------------------------------------------------公司名称: 标签
地址:标签-----------------------------------------------地址: 标签
国家的名字
公司名称: 标签
地址: 标签
ETC...
所以为了解决这个问题,我开始使用:
DataGrid1.DataSource = Database.QueryTable(string.Format("select * from (myTable) group by country"));
DataGrid1.DataBind();
protected void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e) {
if (e.Item.ItemType != ListItemType.AlternatingItem && e.Item.ItemType != ListItemType.Item)
return;
DataRowView drItem = (DataRowView)e.Item.DataItem;
int countryId = Convert.ToInt32(drItem[Common.Data.Reseller.Constants.countryid]);
Label lblAddress = (Label)e.Item.FindControl("lblAddress");
Label lblComanyName = (Label)e.Item.FindControl("lblComanyName");
Label lblCountryName = (Label)e.Item.FindControl("lblCountryName");
DataRow drCountry = Database.QueryRow(Common.Data.Country.Get.CountryByID(countryId));
DataTable dt = Database.QueryTable(string.Format("select * from (myTable) order by countryid"));
lblCountryName.Text = drCountry[Common.Data.Country.Constants.countryName].ToString();
foreach (DataRow dr in dt.Rows) {
if (Convert.ToInt32(dr[Common.Data.Reseller.Constants.countryid]).Equals(countryId)) {
等等......我在这个“if”语句中列出了所有信息。
所以我希望对某人来说很明显这并没有得到我想要的结果。在做了一些研究之后,我对如何继续感到困惑。我是否使用嵌套的 gridViews 或中继器,或者我应该在这里考虑其他什么。我只是希望指出正确的方向,以便我知道我应该研究什么。