sharp - string.compare c# ejemplo
String.Equals GID regresando falso? (2)
Es gI
que no es igual a GI
en el caso del idioma vietnamita . gi
( GI
) es una sílaba inicial, tipo de una letra, mientras que gI
son dos letras separadas. Otras parejas son
cH != CH
kH != KH
nG != NG
nH != NH
pH != PH
qU != QU
tH != TH
tR != TR
Tengo el siguiente código C # en mi aplicación ASP.NET MVC. Intento comparar 2 string
usando el método Equals
, con culture = "vi"
. Mi código a continuación:
string culture = "vi";
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo(culture);
System.Threading.Thread.CurrentThread.CurrentUICulture =
System.Threading.Thread.CurrentThread.CurrentCulture;
var CCC = string.Equals("CategId", "CATEGID", StringComparison.CurrentCultureIgnoreCase);
var xx = string.Equals("TestGID", "TestGID", StringComparison.CurrentCultureIgnoreCase);
var zz = string.Equals("id", "ID", StringComparison.CurrentCultureIgnoreCase);
Resultados:
CCC = falso ;
xx = verdadero;
zz = verdadero;
No sé por qué el CCC
es false
. ¿Hay algo mal? Si configuro culture = id, ko, en
, etc ... entonces CCC = true
. ¿Quién puede ayudarme?
Puedes probar
string culture = "vi";
System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo(culture);
System.Threading.Thread.CurrentThread.CurrentUICulture =
System.Threading.Thread.CurrentThread.CurrentCulture;
var CCC = string.Equals("CategId", "CATEGID", StringComparison.InvariantCultureIgnoreCase);
var CCC1 = string.Equals("CategId", "CATEGID", StringComparison.CurrentCultureIgnoreCase);
En este CCC
devolverá true
pero CCC1
devolverá false
debido a Culture . según su cultura GID
y GID
es diferente.