¿Por qué esta variable de JavaScript que estoy creando a través de C # solo se actualiza una vez?

En mi código C # subyacente para una aplicación ASP.Net, tengo una variable que se está configurando y luego quiero establecer una variable de Javascript igual para que pueda trabajar con ella en el lado del cliente. Esta variable C # se establece en un controlador de eventos y cambia bastante cambiando con bastante frecuencia.

Entonces, mi controlador de eventos solo está haciendo esto ...

int scale = (int)myObject.Scale;
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "JSVariables", "scale=" + scale, true);  

Entonces tengo en mi JS que tengo el controlador de eventos simplemente alertando el valor.

alert(scale);

Problema es que el valor de escala solo se establece la primera vez que se dispara el evento. Puedo pasar por mi código C # cada vez que se genera el evento y ver que se llama a RegisterClientScriptBlock y que la escala de hecho está obteniendo valores diferentes.

¿Cómo consigo que este valor no sea constante? Cada vez que se alcanza la línea RegisterClientScriptBlock, se debe cargar un nuevo valor en mi variable de escala JS, pero se mantiene como estaba inicialmente. ¿Algunas ideas

Respuestas a la pregunta(2)

Su respuesta a la pregunta