ResourceManager.IgnoreCase Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает значение, которое указывает, позволяет ли диспетчер ресурсов выполнять поиск ресурсов с учетом регистра в методах GetString(String) и GetObject(String).
public:
virtual property bool IgnoreCase { bool get(); void set(bool value); };
public virtual bool IgnoreCase { get; set; }
member this.IgnoreCase : bool with get, set
Public Overridable Property IgnoreCase As Boolean
Значение свойства
Значение true
, чтобы не учитывать регистр при поиске ресурсов, в противном случае — значение false
.
Комментарии
Если свойство имеет false
значение IgnoreCase , ресурс с именем Resource не эквивалентен ресурсу с именем resource. Если IgnoreCase имеет значение true
, ресурс с именем "Ресурс" эквивалентен ресурсу с именем "ресурс". Однако обратите внимание, что если IgnoreCase имеет значение true
, ResourceManager.GetString методы и ResourceManager.GetObject выполняют сравнение строк без учета регистра с использованием инвариантного языка и региональных параметров. Преимущество заключается в том, что результаты сравнения строк без учета регистра, выполняемые этими методами, одинаковы на всех компьютерах независимо от языка и региональных параметров. Недостаток заключается в том, что результаты не соответствуют правилам регистра для всех языков и региональных параметров.
Например, турецкий алфавит имеет две версии символа I: один с точкой и один без точки. В турецком языке символ I (Юникод 0049) считается версией в верхнем регистре другого символа ı (Юникод 0131). Символ i (Юникод 0069) считается нижней версией еще одного символа İ (Юникод 0130). Согласно этим правилам регистра, сравнение строк без учета регистра символов i (Юникод 0069) и I (Юникод 0049) должно завершаться ошибкой для языка и региональных параметров "tr-TR" (турецкий язык в Турции). Однако, поскольку сравнение выполняется с использованием правил регистра инвариантного языка и региональных параметров, если IgnoreCase имеет значение true
, это сравнение завершается успешно.
Примечание
Для повышения производительности рекомендуется всегда указывать правильный регистр имен ресурсов. Установка значения IgnoreCase может привести к true
значительному увеличению рабочего набора и значительному снижению производительности.