2016-05-24 53 views
0

我有一個非常簡單的形式(在asp.net中),一些字段從數據庫表填充。其中之一是具有國名的下拉列表。這些名稱在表小寫,但我想做到以下幾點:輸出數據庫值大寫下拉

  • 以大寫首字母顯示它們
  • 保持其價值小寫,這樣當表單提交時,國名的存儲方式與檢索時相同。

ex。在html中,我們可能有這樣的選項:

<option value="montenegro">Montenegro</option> 

用戶看到「黑山」,但提交「黑山」。我知道這可以通過其他方式實現(例如將查詢轉換爲案例,但我很好奇這種方法是否可行)。 此外,也許這個問題的答案確實存在,但我無法找到一個我認爲合適的問題,並且足夠清楚。

+0

你可以簡單地轉換第一個字母資本和價值休息下拉低和值較低的情況下,通過使用'ToLower將()'方法。 – Mairaj

+0

@Mairajahmad是的,很明顯,就是這樣。但是,我有0經驗與asp.net,並不知道從哪裏獲得每個值並將其轉換。 –

+0

請檢查答案。 – Mairaj

回答

1

使用此方法:

protected string UppercaseFirst(string s) 
{ 
    if (string.IsNullOrEmpty(s)) 
     return string.Empty; 

    return char.ToUpper(s[0]) + s.Substring(1); 
} 

下拉後數據綁定調用的foreach:

dropDown.DataTextField = "ColumnName"; 
    dropDown.DataValueField = "ColumnName"; 
    dropDown.DataBind(); 

foreach (ListItem t in dropDown.Items) 
     t.Text = UppercaseFirst(t.Text); 
+0

豎起大拇指爲清晰,簡單,高效的答案,照顧特定的情況,但可以在許多其他情況下使用。我今天真的學到了東西 –

+0

謝謝你的讚賞:) –

0

試試這個

string name = "mairaj"; 
name = name.Substring(0, 1).ToUpper() + name.Substring(1, name.Length - 1).ToLower(); 

上面的代碼將讓「mairaj」「Mairaj」

要轉換stringLowerCase完全使用ToLower()功能像

string country = "PAKIstan"; 
country = country.ToLower(); //This will make "PAKIstan" to "pakistan"