Entonces ... Tengo este escenario en el que tengo un bucle Foreach que recorre una Lista de casillas de verificación para verificar cuáles están seleccionadas. Para cada casilla de verificación seleccionada, tengo que hacer una concatenación de cadenas bastante larga, que implica 30 cadenas diferentes de una longitud promedio de 20 caracteres, y luego enviarla como una solicitud HTTP. 2 de las cadenas dependen del índice/valor de la casilla de verificación seleccionada.Concatenación de cadenas Vs Generador de cadenas Agregar
La longitud de la Lista de casillas de verificación también varía según los datos del usuario. Yo diría que la duración promedio de la Lista sería de 20, pero puede llegar a 50-60. Entonces, el peor de los escenarios sería realizar la concatenación de cadenas enteras 60 o más veces.
Por ahora lo hago con una simple concatenación de cadenas mediante el operador '+', pero me pregunto si sería más rápido hacerlo con Stringbuilder. Por supuesto, eso significa que tendré que crear un objeto Stringbuilder dentro del bucle, o crearlo antes del bucle y llamar a Stringbuilder. Eliminar al final después de enviar la solicitud HTTP.
Agradezco cualquier información que cualquiera pueda compartir sobre este tema.
EDITAR
Gracias por todo el todo el mundo, por lo que las respuestas de lo que he reunido, la mejor manera de que me vaya a hacer esto sería algo así como:
Me disculpo, parece que no entiendo Stringbuilder lo suficiente. Entonces, ¿llamar a Stringbuilder.ToString() borra el Stringbuilder? – Kronon
No. Establecer la propiedad Longitud a cero lo borra. –
someStringBuilder.length = 0; –