将会话值传递给NetworkCredentials

时间:2017-04-21 06:48:24

标签: asp.net .net

这是我的代码

Dir_tpWebRequest.Credentials = New System.Net.NetworkCredential(System.Web.HttpContext.Current.Session("us_UserName"), System.Web.HttpContext.Current.Session("us_Password"))

" System.Web.HttpContext.Current.Session(" us_UserName&#34)"这行代码给出了一个错误"参数匹配参数' username'来自'对象'到'字符串'"谁对此有所了解?

1 个答案:

答案 0 :(得分:1)

Session几乎可以包含任何内容,而不仅仅是字符串。 1

因此,当您从会话中检索某些内容时,会将其键入为object

如果您知道要检索字符串,则需要插入强制转换以告诉编译器:

Dir_tpWebRequest.Credentials = New System.Net.NetworkCredential(
   CType(System.Web.HttpContext.Current.Session("us_UserName"),String),
   CType(System.Web.HttpContext.Current.Session("us_Password"),String))

1 如果您正在使用内存提供程序,那么您可以存储的对象类型几乎没有限制。如果您正在使用其他提供商,那么您只能使用可序列化的对象,但它的范围仍然很广。