通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 MY小屋
联系我们
设为首页
加入收藏

 

QQ,ASP,PHP,JSP,XML,SQL,.Net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>编程开发>>NET专区>>正文 新版上线![旧版]
注:打开慢时请稍等

ASP 到 ASP.NET 的移植 COM 互操作性

http://www.iyit.net  日期:2006-8-28 15:12:43  来源:  点击:
参加讨论】公共语言运行库使 .NET 对象能够无缝地与传统的 COM 组件相互操作。ASP.NET 向开发人员公开熟悉的 Server.CreateObject(ProgId) API 以创建 COM 的晚期绑定引用。
Dim myConn
myConn = Server.CreateObject("ADODB.Connection");
也可通过创建运行时可调用的包装 (RCW)(该包装优化非托管代码和托管代码间的调用性能),使用早期绑定的传统 COM 组件。可使用 .NET 框架 SDK 中包含的 Tlbimp.exe 实用工具创建 RCW。有关 Tlbimp.exe 的更多信息,请参阅“常见任务入门”互操作性一节。ASP.NET 性能一节包含有关比较晚期绑定与早期绑定的更多信息。

同 ASP 一样,也可以使用具有 progidclassid 属性的 <object> 标记来创建传统的 COM 组件。除了可以在页中使用 <object> 标记外,还可以在应用程序的 Global.asax 文件中使用该标记。在这种情况下,将对象添加到 Page.Application.StaticObjects 集合,并且只需使用它的 id 属性便可以编程方式访问它。注意,不能以静态方式在 Global.asax 文件中创建单线程单元 (STA) 对象,因为这样做会像在 ASP 中那样发生运行时错误。

此外,ASP.NET 继续支持现有的 ASP 内部接口 ObjectContext Intrinsic FlowOnStartPageOnEndPage。支持这些接口意味着可以在 ASP.NET 页中使用现有组件(Commerce Server、Exchange 等等)。默认情况下不启用这些接口,但可通过下列页指令显式打开它们:

<%@ Page ASPCompat="true" %>

该指令使 ASP.NET 创建非托管的 ASP 内部对象并将它们传递到页中使用的 COM 组件。它还在 STA 线程池中运行页。有关信息,请参阅下节。

性能注意事项
在 ASP.NET 中,默认情况下线程池是多线程单元 (MTA) 模式,这会影响传统的单元线程 Visual Basic 5 和 Visual Basic 6 组件的性能。ASPCompat="true" 属性使 STA 线程池能够基于每页解决现有 Visual Basic 组件的性能问题。

在托管和非托管组件之间调用同样会引起封送开销,这将降低页的性能。每种方案都会产生不同的性能特点,因此在决定互操作性对应用程序是否合适时进行充分地测试是重要的。然而,几乎在所有方案中,重写托管代码中的 COM 组件都会带来性能收益。有关更多信息和重要提示,请参阅 ASP.NET 性能一节。

本节小结

  1. ASP.NET 向开发人员公开熟悉的 Server.CreateObject API 以创建 COM 的晚期绑定引用。
  2. 也可通过创建运行时可调用的包装 (RCW)(该包装优化非托管代码和托管代码间的调用性能),使用早期绑定的传统 COM 组件。
  3. ASP.NET 继续支持现有的 ASP 内部接口 ObjectContext Intrinsic FlowOnStartPageOnEndPage。这些接口通过页指令 <%@ Page ASPCompat="true" %> 显式启用。
  4. ASPCompat="true" 属性使 STA 线程池能够基于每页解决现有 Visual Basic 组件的性能问题。
  5. 几乎在所有方案中,重写托管代码中的 COM 组件都会提供性能收益。

编辑: [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:ASP 到 ASP.NET 的移植 语言兼容性
下一篇:没有了
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
最新更新 热点排行 推荐新闻
ASP 到 ASP.NET 的移植 COM 互操作性
ASP 到 ASP.NET 的移植 语言兼容性
ASP 到 ASP.NET 的移植 语法和语义
ASP 到 ASP.NET 的移植 概述
ASP.NET 测量性能
ASP 到 ASP.NET 的移植 COM 互操作性
ASP 到 ASP.NET 的移植 语言兼容性
ASP 到 ASP.NET 的移植 语法和语义
ASP 到 ASP.NET 的移植 概述
ASP.NET 测量性能
ASP.NET 性能微调提示
ASP.NET 性能概述
Microsoft .NET 框架 SDK 调试器
ASP.NET 应用程序级跟踪记录
ASP.NET 页输出的跟踪记录
缓存服务 页数据缓存
缓存服务 页片段缓存
HTTP 处理程序和工厂
使用 Global.asax 文件
HTML 文本模式匹配
WIN XP蓝屏代码大全
QQ密码被盗怎么办!我教你找回密码
WinRAR将推出免费正版序列号!
备份软件GHOST使用教程
轻易破解Winrar,Winzip密码
让WinRAR汗颜的压缩软件UHARC
Win XP操作系统优化精髓
XP中重新安装或修复IE6的三种方法
Ghost批处理命令用法详解
挖掘隐藏在Windows XP中的实用工具(续
在ASP.net中保存/取出图片入/从SQL数据
一个.net 压缩位图至JPEG的代码
ASP.NET2.0数据库入门之常见错误
在ASP.NET中防止注入攻击
用ASP.NET开发Web服务的五则技巧
国内首次发现带有感染文件特征盗号病毒
从键盘磨损看电脑主人
如何控制我的电脑只允许登录我自己的Q
QQ密码被盗怎么办!我教你找回密码
使用身份验证来禁止内部用户上网 
Win Powershell遭遇病毒 最好升级软件
SiteAdvisor 助你远离恶意网站
提升流量 站长应该做的五件事
XP中重新安装或修复IE6的三种方法
XP下Asp.net访问被拒绝
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyrights ? 2004-2006 iYiT.Net All Rights Reserved.
网站合作、广告联系QQ:147007642、466949678
易特网络技术 点击这里给我发消息