Установить средство доступа в классе, похоже, не работает с TextInfo и TitleCase
-
19-09-2019 - |
Вопрос
Играя с отображением nhibernate, я заметил, что мой установщик свойств был перегружен (или проигнорирован).Это ожидаемое поведение по умолчанию при сопоставлении nhibernate.
Поэтому я изменил его на использование field.camelCase - таким образом, NHibernate установит частное поле класса entity, а не propety getter / setter, чтобы я мог затем использовать getter для реализации
get { return (новый TextInfo()).ToTitleCase(_property);}
Я заметил, что вывод по-прежнему был тем, что сохранялось, и этот метод не сработал.
Я изменил значение на _property.ToLower();и ожидалось, что результат будет представлен в виде текста в нижнем регистре.
Таким образом, похоже, что есть что-то, что я сделал не совсем правильно с TextInfo.NHibernate работал правильно (NB NHibernate rocks)
Есть какие-нибудь идеи, почему TextInfo это делает?Вероятно, я пропустил что-то тривиальное..
Решение
По какой-то причине это не работает со строками верхнего регистра, uhmmmm Microsoft ;P
Ваше решение будет заключаться в том, чтобы сначала ввести данные в нижнем регистре:
get { return (new TextInfo()).ToTitleCase(_property.ToLower());}