Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从javascript调用.cs类文件(c#)函数_C#_Javascript - Fatal编程技术网

从javascript调用.cs类文件(c#)函数

从javascript调用.cs类文件(c#)函数,c#,javascript,C#,Javascript,我对javascript中的call.cs类文件(C#)函数有疑问 我的代码: 我有一个类文件(.cs),比如调用来自js的函数 ------------------------------------------------------------------ using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace call_cs_function_fro

我对javascript中的call.cs类文件(C#)函数有疑问 我的代码: 我有一个类文件(.cs),比如调用来自js的函数

------------------------------------------------------------------


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace call_cs_function_from_js
{
    public class cal_lcs_function_from_js
    {
        public void getdata()
        {

        }
    }
}
这是javascript代码文件:

函数调用(){
_js.getdata()中的cal_lcs_函数_//这种方式不起作用
警报(“被呼叫”);
}
这里我想从call()的_js调用calu lcs_函数的getdata(means.js)。单击按钮时调用call()


请告诉我还有哪些方法。

使用javascript调用C函数的唯一方法是在ASP.NET页面中运行C函数。然后使用javascript中的ajax调用调用ASP.Net页面并检索函数的结果

其中“/cal_lcs_function_from_js”是在ASP.net中运行的页面,运行javascript文件的web服务器与此相同。

您不能直接从javascript代码调用C#函数。因为javascript在客户端运行,而C#函数驻留在服务器上。 为此,您必须创建一个Web服务,并使用
Ajax
从javascript中调用该服务

更新:

  • 首先使用System.Web.Services添加名称空间
    到您的网页
  • 将以下方法添加到页面中

    [WebMethod]
    public string GetData()
    {
        return ("");
    }
    
  • 使用
    Ajax
    调用该方法

    $.ajax({ 键入:“获取”, url:“/GetData”, 成功:功能(数据){ }))


  • 不,先生,我想把我的函数放在.cs类文件中。然后从javascript函数调用.cs类文件函数。这是不可能的。你能做到这一点的唯一方法就是我上面提到的方法。我正在尝试,稍后我会通知你,先生。你写的代码在c中也不起作用。这是一个方法,因此你需要一个类的实例。当然f-topic和极端挑剔:除了忽略所有大小写约定之外,为什么函数名为
    getdata()
    ,但它不返回任何内容?在服务器端ASP.net web窗体或MVC中使用什么?你好,Asif,我的C函数放在类文件(.cs)中在Asp.net网页中,我这样调用了-----函数调用(){$.ajax({type:“POST”,url:“cal lcs function from js.cs/getdata”}).done(函数(){alert('called');});}但我的函数在类文件(.cs)中不在asp.net页面中,我的疑问是如何设置url才能从客户端获得呼叫,您必须有一个url。为此,您需要创建asp.net页面或将您的web方法添加到现有页面。从该web方法可以调用您的代码。如果您有空,我可以在此处发送我的简单代码,请尝试。帮帮我,伙计
    function call(){
      $.ajax({
        url: "/cal_lcs_function_from_js"
      }).done(function() { 
        alert('called');
      });
    }
    
    [WebMethod]
    public string GetData()
    {
        return ("");
    }