No puedo ver nada en tu código que lo ejecute dos veces. Supongo que se llama dos veces. Ponga un punto de ruptura en addNewComment
y si se llama dos veces, mire los seguimientos de la pila para ver desde dónde se llama en ambas ocasiones.
Tal vez tenga un evento que se llame dos veces, por ejemplo. Esto puede suceder en ASP.NET si ambos tienen activado el cableado automático de eventos y han conectado el evento explícitamente.
Por cierto, definitivamente debería usar consultas parametrizadas no concatenación de cadenas. ¿Supongo que ese comentario es una entrada proporcionada por el usuario? En cuyo caso, se está preparando para un ataque de inyección SQL con el código que ha mostrado.