Tengo una clase que almacena datos en la aplicación asp.net C# que nunca cambia. Realmente no quiero poner esta información en la base de datos. Me gustaría que permanezca en la aplicación. Aquí está mi manera de almacenar los datos en la aplicación:Cuál es la mejor manera de almacenar datos estáticos en C# que nunca cambiará
public class PostVoteTypeFunctions
{
private List<PostVoteType> postVotes = new List<PostVoteType>();
public PostVoteTypeFunctions()
{
PostVoteType upvote = new PostVoteType();
upvote.ID = 0;
upvote.Name = "UpVote";
upvote.PointValue = PostVotePointValue.UpVote;
postVotes.Add(upvote);
PostVoteType downvote = new PostVoteType();
downvote.ID = 1;
downvote.Name = "DownVote";
downvote.PointValue = PostVotePointValue.DownVote;
postVotes.Add(downvote);
PostVoteType selectanswer = new PostVoteType();
selectanswer.ID = 2;
selectanswer.Name = "SelectAnswer";
selectanswer.PointValue = PostVotePointValue.SelectAnswer;
postVotes.Add(selectanswer);
PostVoteType favorite = new PostVoteType();
favorite.ID = 3;
favorite.Name = "Favorite";
favorite.PointValue = PostVotePointValue.Favorite;
postVotes.Add(favorite);
PostVoteType offensive = new PostVoteType();
offensive.ID = 4;
offensive.Name = "Offensive";
offensive.PointValue = PostVotePointValue.Offensive;
postVotes.Add(offensive);
PostVoteType spam = new PostVoteType();
spam.ID = 0;
spam.Name = "Spam";
spam.PointValue = PostVotePointValue.Spam;
postVotes.Add(spam);
}
}
Cuando se llama al constructor el código anterior se corrieron. Tengo algunas funciones que pueden consultar los datos anteriores también. Pero, ¿es esta la mejor forma de almacenar información en asp.net? si no, ¿qué recomendarías?
. Sospecho que una simple declaración de conmutador/caso, en promedio, proporcionaría un rendimiento ligeramente mejor y sería más legible que su uso de operadores ternarios encadenados. –
Esto puede funcionar aún mejor si define una enumeración privada anidada dentro de la definición de estructura y reemplaza el campo int con ella. Alternativamente, defina un grupo de constantes int dentro de la estructura para que los constructores de números mágicos, los ifs y los casos de cambio sean más legibles. –
@Cameron, la sugerencia sobre el uso de interruptores .. No sé sobre el rendimiento (en general, solo me refiero al rendimiento cuando hay un problema, pero en términos de facilidad de mantenimiento, legibilidad, extensibilidad, etc., los Ternerys son más concisos, y por lo tanto, MÁS legible, y más extensible (menos para modificar/duplicar). Este tema se aborda profusamente en otras publicaciones de este foro. –