Al igual que la mayoría del software, los usuarios pueden especificar cómo les gustaría manejar ciertas cosas. En mi caso, los usuarios pueden especificar qué tipo de formato preferirían. Hay 3 opciones, deje sin formato, estuche de camello o estuche adecuado. Actualmente lo tengo funcionando, pero se siente muy torpe y repetitivo. Aquí hay una frase de la clase.¿Cómo manejas las preferencias del usuario?
public static class Extensions
{
public static string GetPreferenceFormattedText(this string text, ApplicationPreferences applicationPreferences, bool pluralize)
{
if (applicationPreferences.FieldNamingConvention.Equals(FieldNamingConvention.SameAsDatabase))
return text;
string formattedText = text.Replace('_', ' ');
formattedText = formattedText.MakeTitleCase();
formattedText = formattedText.Replace(" ", "");
if (applicationPreferences.FieldNamingConvention.Equals(FieldNamingConvention.Prefixed))
return applicationPreferences.Prefix + formattedText;
return applicationPreferences.FieldNamingConvention.Equals(FieldNamingConvention.CamelCase)
? formattedText.MakeFirstCharLowerCase()
: formattedText;
}
}
El método en sí no se siente torpe. Es la forma en que se la llama. Siempre tener que pasar las preferencias del usuario cada vez que quiero obtener el texto formateado no parece ser la mejor manera de hacerlo. ¿Sería mejor hacer una clase normal y pasar el objeto de preferencias de la aplicación a través del constructor?
Gracias.
Woah, gracias. Esto es mucho más fácil de probar y administrar. – Mike