public int CaseLevelSetting(CaseLevel caseLevel, string string1, string string2) { /*The Case_Level attribute is used when ignoring accents but not case. In * such a situation, set Strength to be Primary, and Case_Level to be On. * In most locales, this setting is Off by default. There is a small string * comparison performance and sort key impact if this attribute is set to be On. * Example: * S=1, E=X role = Role = rôle * S=1, E=O role = rôle < Role*/ using (var ucaCollator = new RuleBasedCollator(string.Empty, CollationStrength.Primary)) { Assert.That(ucaCollator.CaseLevel, Is.EqualTo(CaseLevel.Off)); ucaCollator.CaseLevel = caseLevel; return(ucaCollator.Compare(string1, string2)); } }
static int ConvertCaseLevel(CaseLevel level) { switch (level) { case CaseLevel.Level1: return(1); case CaseLevel.Level2: return(2); case CaseLevel.Level3: return(3); case CaseLevel.Level4: return(4); default: return(0); } }