如何使用JavaScript访问C#dll

本文关键字:C#dll 访问 JavaScript 何使用 | 更新日期: 2023-09-27 18:26:16

我在c#中有一个类库,我添加了该dll作为对网站的引用,我想访问类库中的方法。当我尝试使用ActiveXobject访问这些方法时,它抛出了一个异常,说对象无法创建

namespace Office
{
    public class Algebra
    {
        public double Addition(double x, double y)
        {
            return x + y;
        }
    }
}

这是我在c类库中的方法。我的javascript如下

(function () {
        alert("suresh");
        var myobj;
        myobj = new ActiveXObject("Office.Algebra");
        alert(myobj);
        var add = myobj.Addition(7, 6);
        alert(add);
    })();

如何使用JavaScript访问C#dll

否!不要走这条路。

如果要从客户端访问服务器资源,则需要设计和实现Web服务,例如,在REST原则的基础上,该原则将直接驱动您使用ASP.NET Web API。

总之:使用Web服务从后端公开资源,并使用AJAX访问它们。

如果我没有猜错的话,你有一个想要在web浏览器上运行的dll(iirc,只有IE)。如果是这种情况,那么您必须在客户端计算机上注册dll(使用regsvr、regasm,具体取决于您的dll)。

但我同意Matias的观点,把它作为最后的手段,例如,你必须为一些遗留硬件需求、遗留应用程序等调用这个dll,你至少花了3个月的时间寻找另一种方法。:p