我有一个DTS作业,它使用MSXML2.XMLHTTP3.0对象向ASP.NET应用程序生成post请求。在封面下面,ASP.NET应用程序使用System.Reflection获取一些程序集信息,我收到以下异常:
System.Web.HttpException错误代码:-2147467259消息会话状态只能在enableSessionState设置为true时使用,无论是在配置文件中还是在enableSessionState指令中。还请确保应用程序配置中的\部分包括System.Web.SessionStateModule或自定义会话状态模块。
DTS职务代码:
Dim objSvHTTP
Dim PostData
Set objSvHTTP = CreateObject("Msxml2.XMLHTTP.3.0")
objSvHTTP.open "POST", "http://www.mywebsite.com", false
objSvHTTP.send
If (objSvrHTTP.responseText = "") Then
//do something
Else
//do somethiing else
End IfASP.NET应用程序代码:
string WebPath = "D:\mywebsite\bin\mywebsite.dll";
Assembly UI = Assembly.LoadFrom( @WebPath );
Type t = UI.GetType( "MyWebsite.BasePage" );
MethodInfo MyMethod = t.GetMethod( "MyMethod" );
object obj = Activator.CreateInstance(t);
MyMethod.Invoke( obj, null);问题是,是否需要在XMLHTTP请求中向ASP.NET应用程序提供vaild Active凭据以避免错误消息
发布于 2008-11-14 09:57:57
试试这个:http://support.instantasp.co.uk/Topic4710-31-1.aspx
发布于 2008-11-14 09:48:35
从异常消息判断,我不认为这是一个身份验证问题。是否被调用的方法试图访问ASP.NET会话?这就解释了例外情况。
发布于 2008-11-14 17:26:19
@以色列汗:
当DTS调用流程所需的特定网页时,我们最终找到了一个解决办法,即不执行反射代码。
这将解释为什么当我们试图在我们的开发和生产环境中解决这个问题时,我们得到的结果好坏参半。我比较了每个环境中的web.config文件,并注意到HttpModules部分中的会话引用是在我们的生产环境中,而不是在我们的开发环境中。
这一过程在发展中发挥了作用,但在生产中却不起作用。我已经向我的同事提交了这个建议,看看他们是否愿意尝试这个解决方案,而不是解决办法。
https://stackoverflow.com/questions/264022
复制相似问题