Ignora caso e confronta in C #

Come convertire la stringa in maiuscolo prima di eseguire un confronto oppure è ansible confrontare la stringa ignorando il caso

if (Convert.ToString(txt_SecAns.Text.Trim()).ToUpper() == Convert.ToString(hidden_secans.Value).ToUpper()) 

Usa questo:

 var result = String.Compare("AA", "aa", StringComparison.OrdinalIgnoreCase); 

Metodo String.Compare (String, String, Boolean)

Il confronto tra stringhe senza distinzione tra maiuscole e minuscole è fatto in questo modo in C #:

 string.Equals("stringa", "stringb", StringComparison.CurrentCultureIgnoreCase) 

Attento! questo codice è dipendente dalla cultura; ci sono molte altre opzioni disponibili, vedi http://msdn.microsoft.com/en-us/library/system.stringcomparison.aspx .

Bene, puoi usare il String.Equals(String,StringComparison) . Basta passarlo StringComparison.InvariantCultureIgnoreCase o StringComparison.CurrentCultureIgnoreCase base ai tuoi obiettivi …

Da MSDN :

Metodo String.Compare (String, String, Boolean):

 public static int Compare( string strA, string strB, bool ignoreCase ) 

quindi nel tuo caso:

 if( String.Compare(txt_SecAns.Text.Trim(), hidden_secans.Value, true) == 0) 
 txt_SecAns.Trim().Compare(hidden_secans.Trim(), StringComparison.CurrentCultureIgnoreCase) 

string.Compare (string1, string2, true) == 0 confronterà se le due stringhe sono uguali a ignorare il caso

Usa StringComparison.CurrentCultureIgnoreCase :

 if (txt_SecAns.Text.Trim().Equals(hidden_secans.Value.ToString(), StringComparison.CurrentCultureIgnoreCase)) 
 String.Compare(str1, str2, true); 

Proprio come questo:

 if (string.Compare(txt_SecAns.Text.Trim(), hidden_secans.Value.ToString(), true) == 0) { // DoSomething } 

Il terzo parametro true dice string.Compare per ignorare il caso.

Mi piacerebbe confrontarmi con una cultura corretta come tutti qui, ma qualcosa non è stato suggerito:

 public bool CompareStrings(string stringA, string StringB) { return stringA.ToLower() == stringB.ToLower(); }