如何使用 Javascript 调用 C# class 方法?

How to call C# class method using Javascript?

我在 App_Code 文件夹下创建了 Class,我在那里创建了方法。 我需要使用 Sample.aspx 文件中的 JavaScript 调用 class 方法。

Class:

namespace ContactBook.App_Code
{
    //The function need to call...
    public class ContactBook_functionalities
    {
        public static bool MyFunction(string email, string contact)
            {
                 //Code...
            }
    }
}

JavaScript:

<script type="text/javascript">
        function callMyFunc(email, contact)
        {
             //var x = MyFunction(string email, string contact);
        }
</script>

[WebMethod] 不适用于 Class 函数。

您需要在 MVC 中公开一个 HTTP handler in ASP.net or Controllers / Web API,以便您的 JavaScript 能够与服务器通信。无法通过 JavaScript.

在 ASP.net 应用程序外部访问简单 类

创建自己的 controller/HTTP 处理程序后,您需要向控制器发送 AJAX 请求,它应该类似于下面的代码:

 $.ajax({
   url: "sampleurlhere",
   type: "POST"//POST or GET,
   data: {
       id: "sample id as parameter"
   },
   success: function(e) {
    //this event fires up when response arrives.
   }
 })

我不认为你可以那样做,因为:

  • ASPX是服务器端,而JavaScript是客户端
  • 来自 ASP 站点的部分组件已编译

您可以做的是在调用该函数的服务器上公开一个路由(如果您使用的是 MVC 设计模式)(或者 Api 用于该函数)。