首页  :: 新随笔  :: 订阅 订阅  :: 管理

如何在ASP调用一个用C#.NET(2005)写成的类?

Posted on 2008-01-11 11:06  礼拜一  阅读(762)  评论(1编辑  收藏  举报
VS2005里,做个DLL让ASP调用貌似没有2003里那么复杂了~
当然了,你按照2003的思路做也能实现的~

2003里需要有接口,需要手动强命名,在2005里都不需要了~
2005里的操作相对来说比较的简单~
例子例子,例子最方便说清楚的~

using System;

namespace Dll
{
    
public class Class1
    
{
        
public string ReturnStr()
        
{
            
return "最简单的看看成不成的~";
        }

    }

}

拿这个做个类库,在项目--属性里“为程序集签名”,.snk的文件,可以和你的命名空间一样~

还有个很要命的地方,2005里添加了一个东西来控制是否“对 COM 组件不可见”,需要把[assembly: ComVisible(true)]这个设置成true~

Guid在2005里已经有了,不用再向2003那样做个接口手动一个Guid~~

这些都做完了,编译生成一下吧~随便Debug还是Release~~

在.net命令提示里进入刚才编译出的DLL所在的文件夹,输入regasm /tlb:Dll.tlb Dll.dll注册DLL,并生成一个tlb文件(这个这个,你的DLL名字是什么就改成什么,我这个只是是针对我自己的~)

继续在控制台里运行这个:gacutil /i Dll.dll 把这个Dll加入全局Assembly Cache~

差不多了差不多了,搞个ASP的文件看看的~

<%
  
set obj = Server.CreateObject("Dll.Class1")
  
dim str1
  str1 
= obj.ReturnStr()
  response.write(str1)
%
>

然后就看到输出了~~

差不多大概就是这样了,基础不好,人懒,不查资料,自己琢磨的,有什么不妥的地方帮我纠正一下,先谢了~