2015-11-11 118 views
-2

我有2個字符串,我比較,但我需要避免問題,如果我使用大寫或小寫。忽略大小寫敏感的C#

有什麼辦法可以做到這一點?

感謝

這裏是我的代碼:

if (userID >= 0 && fnIndex >= 0 && lnIndex >= 0) 
{ 
for (int i = 1; i < userDataId.Length; i++) 
    { 
    var userData = userDataId[i].List; 
     if (userData[fnIndex].ToString() == "FIRSTNAME1" && 
     userData[lnIndex].ToString() == "LASTNAME1") 
     { 
      userId = userData[userID].ToString(); 
      break; 
     } 
    } 
} 
+1

在您尋求幫助之前,請務必*先*谷歌您的問題標題。 –

+0

查看下面的答案或使用字符串類的'.ToLower()'方法。但在這種情況下,下面的答案應該更好 – Jens

+0

@JensHorstmann - 考慮到被比較的字符串是大寫的,你的評論是錯誤的。 –

回答

3

你可以(也應該總是)做這種比較,而不是使用==字符串:

if (userData[fnIndex].ToString().Equals(
    "FIRSTNAME1", StringComparison.CurrentCultureIgnoreCase)) 

此外,"FIRSTNAME1""LASTNAME1"應被製成常量。

+0

謝謝!它工作。我改變了它的名字和姓氏,這兩個作品。謝謝您的幫助 –