日期:2014-05-19  浏览次数:20576 次

ASP.NET(C#)怪异问题,求救,请高手指点?
在项目中,引用dll文件后调用其中的公有函数FindMeByUserName();在Visual   Web   Developer   2005   Express   Edition中调试时可以正常,但在IIS下访问时,出现如下错误;具体函数及代码段在下面,请问大家这是什么问题?应该如何解决?

1,引用的dll名为:YingPing.dll,其中有Cls_用户等类;

2,在项目中引用类后,代码为:
//---------------------------------------------
                YingPing.Cls_用户   objMain   =   new   YingPing.Cls_用户();
                string   a   =   "Admin ";
                objMain.FindMeByUserName(ref   a);

                Response.Write(objMain.ID.ToString());
                Response.Write(objMain.get_姓名());
//---------------------------------------------

3,在iis下调用时会出现如下错误:
//----------------------------------------------
“/”应用程序中的服务器错误。
--------------------------------------------

连接无法用于执行此操作。在此上下文中它可能已被关闭或无效。  
说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。  

异常详细信息:   System.Runtime.InteropServices.COMException:   连接无法用于执行此操作。在此上下文中它可能已被关闭或无效。

源错误:  


行   17:                   YingPing.Cls_用户   objMain   =   new   YingPing.Cls_用户();
行   18:                   string   a   =   "Admin ";
行   19:                   objMain.FindMeByUserName(ref   a);
行   20:  
行   21:                   Response.Write(objMain.ID.ToString());
 
//----------------------------------------------

4,但在ASP.NET   Development   Server下运行正常;



------解决方案--------------------
try
在iis 把这个应用程序单设为一个应用程序池不要和2.0以前的在一起

------解决方案--------------------
一楼的意思是:不同版本的.net Framework不能共享应用程序池,你可以在IIS里新建一个应用程序池。