¿Puedes llamar a una function C # desde JavaScript?

Posible duplicado:
Llamar a la function ASP.NET desde JavaScript?

"¿Puedes llamar a una function C # desde JavaScript?" fue preguntado por un entrevistador. ¿Es posible? ¿Si es así, entonces cómo?

Puedes, pero no directamente. Tendría que usar una implementación AJAX o escribir una llamada AJAX usted mismo usando XmlHttpRequest.

No puede llamar al código del lado del server 'directamente' desde el código del lado del cliente. Esto se debe a que, por layout, el código del lado del server se ejecuta en el lado del server y el código del lado del cliente en el cliente. Sin embargo, hay algunas soluciones. Para llamar al código del server desde javascript, necesitarás usar AJAX, y la salida más fácil es usar las extensiones ASP.NET AJAX.

Ver este enlace

Cómo llamar a la function del lado del server desde el código del lado del cliente usando PageMethods en ASP.NET AJAX

Puede llamar a las funciones de C # a través de JavaScript, pero no directamente. Es decir, simplemente no puede include el espacio de nombres y hacer una llamada directa a la function. La request debe ir indirectamente a través de una interfaz en el server web que maneja las requestes del browser y luego las envía a las funciones. Hay varias maneras de hacer esto

  1. Usar services de estilo REST . He estado usando esto desde que cambié a ASP.NET MVC.
  2. Uso de web services (Métodos de página y classs de service). Una vez más, Ajax está involucrado y hay herramientas especiales de Microsoft para hacer esto más fácil.

Sí tu puedes. Compruebe los methods de la página .

O puede llamar a una function de lenguaje administrado C # (o lo que sea) en un control de Silverlight llamando a través del puente de JavaScript.

Esta es una de esas preguntas difíciles donde la respuesta es "no directamente, pero con un poco de ayuda de Ajax o de la página web DOM que puedo, y así es como lo hago …".