我有一個存儲過程,用於提取客戶端的詳細信息,包括地址。地址的形式是90霍華德廣場,倫敦舊街,英國EC2 4RA,英國。現在,我怎麼能顯示爲將逗號分隔的地址分隔成同一列中的多行
90霍華德廣場
老街
倫敦
EC2 4RA
屋
在aspx頁面的GridView。
我有一個存儲過程,用於提取客戶端的詳細信息,包括地址。地址的形式是90霍華德廣場,倫敦舊街,英國EC2 4RA,英國。現在,我怎麼能顯示爲將逗號分隔的地址分隔成同一列中的多行
90霍華德廣場
老街
倫敦
EC2 4RA
屋
在aspx頁面的GridView。
您可以使用String.Split將您的地址分隔爲其部件的字符串[]。然後使用String.Trim刪除零件上的前導空格。然後使用gridview顯示字符串[]。
一個簡單的方法就是拆分這些字符串由逗號和填充DataTable
,你可以爲網格爲DataSource
使用:
var tblAddresses = new DataTable();
tblAddresses.Columns.Add("Place");
tblAddresses.Columns.Add("Street");
tblAddresses.Columns.Add("City");
tblAddresses.Columns.Add("Post Code");
tblAddresses.Columns.Add("Country");
string[] input = new[]{"90 Howard Square,Old street, London, EC2 4RA, Uk"};
foreach(string address in input)
tblAddresses.Rows.Add(address.Split(new[]{','}, StringSplitOptions.RemoveEmptyEntries));
現在將其設置爲數據源和數據綁定它:
grdAddresses.DataSource = tblAddresses;
grdAddresses.DataBind();
將GridView
的AutoGenerateColumns
屬性設置爲true
並且完成。
編輯作爲@OGHaza曾這樣評價這給你比你真正想要的,這裏是剛剛插入地址標記版本:
tblAddresses.Columns.Add("Address-Part");
string[] input = new[]{"90 Howard Square,Old street, London, EC2 4RA, Uk"};
var allAddressParts = input
.SelectMany(addr => addr.Split(new[]{','}, StringSplitOptions.RemoveEmptyEntries));
foreach (string part in allAddressParts)
tblAddresses.Rows.Add(part);
@OGHaza:哎呀,編輯我的答案。 –
哎呀,我刪除了我的評論,假設現在你已經改變了你的答案沒有意義。然後我讀你的答案.... – OGHaza
我能有一些代碼你在哪裏綁定地址字段? –