Razor Sintaxis y Javascript

Como prueba, estoy convirtiendo una aplicación de prueba de concepto que hemos escrito de Web Forms a Razor, simplemente para poder evaluarla.

Hasta ahora me he encontrado con un problema que me duele la cabeza ... generar Javascript del lado del cliente ...

Formularios web
<script type="text/javascript">
    var jqGridIdList = "<%: Url.Action ("getidlist", "office", new { area = "reports" }) %>";

    var availableIds = [];
    <% for (var i = 0; i < Model.Data.Count (); i++) { %>
    availableIds.push({ value : "<%: Model.Data.ElementAt (i).Text %>", label : "<%: Model.Data.ElementAt (i).Text %>" });
    <% } %>
</script>
Sintaxis de maquinilla de afeitar
<script type="text/javascript">
    var jqGridIdList = "@Url.Action("getidlist", "office", new { area = "reports" })";

    var availableIds = [];
    @for(var i = 0; i < Model.Data.Count (); i++) {
    availableIds.push({ value : "@Model.Data.ElementAt(i).Text", label : "@Model.Data.ElementAt(i).Text" });
    }
</script>

El compilador me da el siguiente error en la línea 'availableIds.push':

Mensaje de error del compilador: CS1525: término de expresión no válido '{'

Obviamente está tratando de compilarlo como C # ... pero ¿cómo lo detengo?

Gracias,
Kieron

Respuestas a la pregunta(1)

Su respuesta a la pregunta