我有一個包含拆分陣列到另一個陣列
- 的
Price
- 的
Code
我已經成功地列表劃分到一個數組,但我想一個列表進一步拆分陣列,以便我可以分別得到Price
和Code
並按升序對Price
進行排序。當分類發生時,我需要Code
也一起排序,因爲Price
是針對特定的Code
。
因此,這將是這樣的: 原版:
1588,8DNY;1488,ACNY;1288,7DPE;1888,8HUC;1488,8WNH;
後拆分到arrPrice:
[1588,8DNY],[1488,ACNY],[1288,7DPE],[1888,8HUC],[1488,8WNH]
第二分割2ndarrPrice:
[1588],[1488],[1288],[1888],[1488]
第二分割2ndarrCode:
按升序排列[8DNY],[ACNY],[7DPE],[8HUC],[8WNH]
排序價格:
[1288],[1488],[1488],[1588],[1888]
號碼將被相應地進行排序:
[7DPE],[ACNY],[8HUC],[8WNH]
我第一次分裂後卡住。
if (lblprices.Text != "")
{
arrprice = lblprices.Text.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
Array.Sort(arrprice);
for (i = 0; i < arrprice.Length; i++)
{
arr2 = arrprice[i].Split(',');
SQL2 = "SELECT DISTINCT [TP].[TCode], ";
SQL2 += "[TP].[TName], ";
SQL2 += "[TP].[TName_CN], ";
SQL2 += "[TP].[TourType], ";
SQL2 += "[TP].[LastUpdateDate], ";
SQL2 += "[TP].[ValidityFrom], ";
SQL2 += "[TP].[ValidityTo], ";
SQL2 += "[CL].[CountryCode], ";
SQL2 += "[CL].[CityName] ";
SQL2 += "FROM [CL], [TP], [TourItinerary],[TourHotel] ";
SQL2 += "WHERE [TP].[Activation] = 1 ";
SQL2 += "AND [TP].[TCode] = '" + arr2[1] + "' ";
SQL2 += "ORDER BY [TP].[LastUpdateDate] DESC ";
objConnTour.Open();
SqlCommand command = new SqlCommand(SQL2, objConnTour);
SqlDataReader dataReader = command.ExecuteReader();
if (dataReader.Read())
{
html += "<tr><td class=\"border\">" + dataReader["TCode"] + "</td>";
html += "<td class=\"border\">" + dataReader["TName"] + "</td>";
html += "<td class=\"border\">" + dataReader["TName_CN"] + "</td>";
html += "<td class=\"border\">" + dataReader["TType"] + "</td>";
html += "<td class=\"border\">" + dataReader["LastUpdateDate"] + "</td>";
html += "<td class=\"border\">" + dataReader["ValidityFrom"] + "</td>";
html += "<td class=\"border\">" + dataReader["ValidityTo"] + "</td>";
html += "<td class=\"border\">" + dataReader["CountryCode"] + "</td>";
html += "<td class=\"border\">" + dataReader["CityName"] + "</td>";
html += "<td class=\"border\">from <span class=\"price-red\">S$<b>" + arr2[0] + "</b></span><td/></tr>";
}
dataReader.Close();
objConnTour.Close();
}
}
return html;
上面的代碼將無法按升序對價格進行排序。正如你可以在我的arr2
拆分看到的,我需要Code
和Price
在一起,因爲我將基於Code
從數據庫中檢索數據。
-------- ---------編輯
確定這樣的問題是,如果價格都在1000-1999的,它就會被完全排序。 但是,如果我有價格小於1000,它不會被以升序方式
實施例通過@jekcom
這是當我有沒有排序是使用所提供的代碼的結果的屏幕截圖拆分列表,並檢索他們從數據庫
生,這是一個排序使用@ jekcom的代碼
請注意價格未按升序排序。
你能指出確切位置,你會得到一個錯誤/不工作? – 2pietjuh2
jekcom的回答是錯誤的。請參閱我的代碼或電子郵件 – nawfal
修復複製器,立即嘗試 – jekcom