Set accesseur de la classe ne semble pas travailler avec TextInfo et TitleCase
-
19-09-2019 - |
Question
Alors que jouer avec une cartographie NHibernate, je remarquai qu'un poseur de propriété que j'avais été surchargé (ou ignoré). Ce comportement est normal par défaut avec un mapping NHibernate.
Alors je l'ai changé pour utiliser le field.camelCase - donc NHibernate fixerait le domaine privé de la classe d'entité et non le getter propety / setter pour que je puisse ensuite utiliser le getter pour mettre en œuvre
get {return (nouveau TextInfo ()) ToTitleCase (_property).}
J'ai remarqué que la sortie était encore ce qui a persisté et cette méthode ne fonctionne pas.
J'ai changé à _property.ToLower (); et la sortie était attendue sous forme de texte minuscule.
Il semble qu'il y ait quelque chose que je ne l'ai pas fait tout à fait raison avec TextInfo. NHibernate fonctionnait correctement (NB roches NHibernate)
Toutes les idées pourquoi TextInfo fait cela? Probablement quelque chose de trivial que j'ai manqué ..
La solution
Pour une raison quelconque, il ne fonctionne pas avec des chaînes en majuscules, uhmmmm Microsoft; P
Votre solution sera de Minuscule l'entrée premier:
get { return (new TextInfo()).ToTitleCase(_property.ToLower());}