js中怎么调用dll中的方法

kbcsy 2011-06-12 08:13:47
通过在项目中引用dll,可以在后台cs代码中调用dll中封装的方法,哪请问如何在前台的js中以同样的方式访问dll中的方法呢,我看到过这种用法,就是不知道怎么实现的
...全文
5828 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
躲奶 2011-06-13
  • 打赏
  • 举报
回复
用不着使用ActiveX,这不是杀鸡用龙刀吗?

实现js调用dll中的方法也是ajax中一种实现,首先新新建类库,类库名字叫ajax好了,然后新建process.cs文件,代码如下


using System;
using System.Web;

namespace ajax
{
public class process:IHttpHandler
{
public bool IsReusable
{
get { return true; }
}

public void ProcessRequest(HttpContext context)
{
context.Response.CacheControl = "no-cache";
context.Response.Write(DateTime.Now);
}

}
}


然后编译为ajax.dll

接着在web.config中添加

<configuration>
//IIS6
<system.web>
<httpHandlers>
<add verb="*" type="ajax.process,ajax" path="ajax.aspx"/>
</httpHandlers>
</system.web>
//IIS7
<system.webServer>
<handlers>
<add name="ajax" verb="*" type="ajax.process,ajax" path="ajax.aspx"/>
</handlers>
</system.webServer>
</configuration>
注意IIS6还要设.aspx的映射不检查文件是否存在。

最后创建test.htm文件
<html>
<head>
<title>调用DLL中的处理</title>
<script type="text/javascript">
function getTime() {
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", "/ajax.aspx", false);
xmlHttp.onreadystatechange = function () {
if (xmlHttp.readyState == 4) {
alert(xmlHttp.responseText);
}
}
xmlHttp.send(null);
}
</script>
</head>
<body>
<input type="button" value="getTime" onclick="getTime()" />
</body>
</html>


chengjia2284 2011-06-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kid_wang 的回复:]
只能调用activex中的dll
[/Quote]



学习了
weike021996 2011-06-13
  • 打赏
  • 举报
回复
在html中引用控件,在js中操作控件
weike021996 2011-06-13
  • 打赏
  • 举报
回复
mark
kid_wang 2011-06-13
  • 打赏
  • 举报
回复
只能调用activex中的dll

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧