在ASP.NET中使用第三方COM dll

时间:2010-12-09 08:18:33

标签: asp.net session com

我有一个使用COM dll的ASP.NET项目。当我加载网站时,我登录没有问题,只要我不去使用COM库的页面,我就可以浏览网站。

当我转到使用COM库从数据库获取数据的页面时,页面加载正常。当我离开此页面时出现问题。出于某种原因,我被发送回登录页面,就像初始会话被删除一样。

如果我拿走页面上显示库检索数据的组件,我可以离开页面,所以肯定是对图书馆的调用会杀死会话。

有谁知道为什么会发生这种情况?

2 个答案:

答案 0 :(得分:1)

修正了它。这是一个愚蠢的问题。每次执行某些操作时,库都会在bin目录中创建一个日志文件。每次bin目录中的文件发生更改时,会话都会被删除,因为AppDomain会被销毁并重新启动。

答案 1 :(得分:0)

我想知道COM组件是否会崩溃并拆除您的应用程序池(或者现在在ASP.NET中调用的任何内容)。

您是否可以关注ASP.NET工作进程(以前称为aspnetwp.exe),看看当您导航到带有COM调用的页面时它是否会消失?

如果是这样,COM组件可能会抛出结构化异常,如果将其存储在服务器上,则会终止进程,从而导致会话状态丢失。

您可以从事件查看器(开始 - >运行 - > eventvwr)收集更多信息,其中ASP.NET记录任何崩溃。