¿Cómo se produce javascript sin procesar en asp.net

Me gustaría enviar javascript sin formatting a una respuesta aspx. El uso de response.write falla porque junto con el javascript, vuelca todas las otras cosas de asp.net en la página, por ejemplo:

... <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTAxODk4MjA3OWRk9jVlI2KaQPiVjEC+P0OPYGV74vKjJQZuwD6OaHhb+U0=" /> ... 

¿Hay alguna forma de simplemente enviar el text en bruto al resultado sin tener todas las otras cosas de asp.net en la página? Estoy tratando de usar la página de la siguiente manera:

 <script src="mypage.aspx"></script> 

Donde esta página contiene el javascript, esto desencadena la página aspx, sin embargo, a cromo no le gusta por razones obvias … espera javascript, pero está obteniendo javascript + markup + .NET inyectado.

¡Por favor, no hay comentarios sobre por qué estoy haciendo esto! Trabajando en un problema muy específico.

Utilice .ashx Generic Handler . Luego puede establecer context.Response.ContentType = "text/javascript" y simplemente use Response.Write

No estoy seguro de entender tu pregunta, pero puedes intentar algo como esto:

 Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "registerSomething", "doSomething = function(){ ... }", true); 

También podría deshabilitar viewstate, etc … y eliminar todo del file aspx.

 <%@Page ... EnableViewState="false" EnableViewStateMac="false"%> 

No incluya nada más en el file aspx, no runat = server anything. Luego, escriba su javascript en el código subyacente utilizando response.write.

Esto será bastante difícil usando WebForms. La mejor manera que puedo pensar sería agregar MVC a su proyecto para que pueda tener más control sobre la salida. (Sí, MVC y WebForms pueden coexistir en el mismo proyecto).

De esta forma, aún puede aprovechar la syntax .aspx (o la syntax Razor aún más fría) para producir un file javascript, sin que WebForms agregue todas sus cosas molestas a su salida.

Necesitaba esto y esta fue mi solución:

Creó un file script.aspx y el contenido fue javascript directo con la directiva de encabezado de la página. Luego, en el javascript, pude insert llamadas a methods estáticos:

 <%@ Page Language="C#" ContentType="text/javascript" %> function someFunction() { var someVar; someVar="<%= MyClass.MyMethod() %>"; } 

Eso devolvió javascript puro con las inserciones del lado del server según sea necesario:

 function someFunction() { var someVar; someVar="Some string returned by my method"; }