当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 在ASP.NET中使用.NET组件

ASP.NET
FreeTextBox(版本3.1.6)在ASP.Net 2.0中使用方法
.NET 常用功能和代码小结
在 .NET Framework 2.0 中未处理的异常导致基于 ASP.NET 的应用程序意外退出
asp.net IList查询数据后格式化数据再绑定控件
asp.net sql存储过程
asp.net 简单实现禁用或启用页面中的某一类型的控件
asp.net(c#)获取内容第一张图片地址的函数
The remote procedure call failed and did not execute的解决办法
ASP.NET 在线文件管理
asp.net 读取并修改config文件实现代码
ASP.NET Cookie 操作实现
asp.net Silverlight中的模式窗体
Silverlight中动态获取Web Service地址
asp.net Silverlight应用程序中获取载体aspx页面参数
asp.net 水晶报表隔行换色实现方法
asp.net 获取Gridview隐藏列的值
手动把asp.net的类生成dll文件的方法
asp.net 使用ObjectDataSource控件在ASP.NET中实现Ajax真分页
动态指定任意类型的ObjectDataSource对象的查询参数
asp.net Md5的用法小结

在ASP.NET中使用.NET组件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 41 ::
收藏到网摘: n/a

很多人在 @Import 和 @Assembly 页面标识的时候感到困惑,本文将为你解开这些疑问,告诉你如何来使用.NET的组件。</P><P>和ASP中的类相比较有什么改变?</P><P>如果你以前曾经开发过ASP程序,那你应当是非常熟悉下面的一段代码了:</P><P><script runat="server" language="VBScript">
Dim fso
Set fso = Server.CreateObject("Scripting.FileSystemObject")
</script> </P><P>上面的代码告诉我们在ASP当中需要使用Server对象的CreateObject方法来建立一个类实例。上面的代码中,首先声明了变量fso,之后我们将变量fso赋于FileSystemObject的对象(FileSystemObject对象可以在Scripting这个库中找到)。如果想要上面的ASP代码得以正常运行,我们必须确定相关的DLL文件已经被安装并且注册到 服务器 。当VBScript运行库被安装的时候,FileSystemObject对象是会被自动注册的。但是如果你想使用第三方开发的组件或者使用你自己创建的组件,你就需要小心安装并且注册你的组件了。
接下来让我们来看看,假设在 ASP.NET 中也存在FileSystemObject这个对象的话,我们应当如何来实例化它:</P><P>使用VB.NET :
<script runat="server" language="VB">
Dim fso As Scripting.FileSystemObject = New Scripting.FileSystemObject()
</script></P><P>使用C#:
<script runat="server" language="c#">
Scripting.FileSystemObject fso = new Scripting.FileSystemObject();
</script></P><P>
正如你所看到的一样,在 ASP.NET 中实例化类是同ASP有所不同的。其中重要的不同点有:</P><P>在 ASP.NET 中已经不再可以使用VBScript语言了,而是被功能强大的VB.NET所代替了
在 ASP.NET 当中,在你声明一个变量的同时,可以指定它的类型并且初始化这个变量
为了引用一个类,需要使用这样的表示方法:名称空间[.子名称空间].类。
在上面的例子当中,我们引用了FileSystemObject这个类,而FileSystemObject这个类可以在名称空间Scripting中找到。需要注意的是,上面的名称空间实际上只是我们假设的一个名称空间,它并不存在于.NET的架构当中,所以上面的代码实际上是无法运行的。换句话来说就是,我们需要自己建立Scripting这个名称空间并且在这个名称空间当中定义FileSystemObject这个类。</P><P>什么是名称空间? </P><P>在前面的章节当中我们已经使用过“名称空间”这个词。利用名称空间你可以将多个类组成在逻辑上相关的一些单元。通常,你会将一些提供相似功能或者具有相似状态的类聚合在一起。比如名称空间System.IO的一个实例就包含了那些用来处理输入和输出操作(比如:读、写、删除文件)的类。值得注意的是,名称空间当中的类要具有类似的功能或者类似的状态并不是一个必须的要求。你可以按照任何规则自由的组织你自己的名称空间,甚至可以没有任何规则。</P><P>引用.NET组件</P><P>应当注意到了,我们给出的第一个 ASP.NET 的例子只是用来教学演示的---它是无法运行的。现在让我们来看一个能够正常运行的实际例子:</P><P>使用VB.NET建立Message对象
<%@ Assembly Name="System.Messaging.dll" %>
<script runat="server" language="VB">
Dim myDir As System.Messaging.Message = New System.Messaging.Message()
</script> </P><P></P><P>使用C#建立Message对象
<%@ Assembly Name="System.Messaging.dll" %>
<script runat="server" language="C#">
System.Messaging.Message myDir = new System.Messaging.Message();
</script> </P><P>指令@Assembly表示将一个集合引用到当前的页面,从而使得所有在集合当中定义的类、界面、结构可以在当前页面自由的被使用。在我们上面给出的例子当中,我们绑定了System.Messaging.dll这个集合。在这个集合当中包含了System.Messaging这个名称空间,System.Messaging名称空间提供了存取.NET架构消息的功能。我们建立了Message类的一个实例,从而可以利用它存取消息队列当中的消息了。如果我们需要在一个代码绑定的文件中建立Message类,需要这样做:</P><P>使用VB.NET在代码绑定文件中建立Message对象
Public Class myPage
Inherits System.Web.UI.Page
Dim myDir As System.Messaging.Message = New System.Messaging.Message()
End Class</P><P>使用C#在代码绑定文件中建立Message对象
public class myPage : System.Web.UI.Page {
System.Messaging.Message myDir = new System.Messaging.Message();
} </P><P>需要注意的是,如果我们想要编译这个类,我们需要在编译的时候通知编译器我们需要引用System.Messaging.dll以及System.Web.dll这两个文件。假设