从ASP.NET页面获取请求变量
发布时间:2020-12-16 04:15:40 所属栏目:asp.Net 来源:网络整理
导读:我写了以下函数,大约95%的时间都有效,但我需要它100%工作(显然): Public Shared Function getPassedVars() As String Const keyCount As Integer = 54 ' 54 seems to be the number of parameter keys passed by default (for this web_app). ' there are
|
我写了以下函数,大约95%的时间都有效,但我需要它100%工作(显然):
Public Shared Function getPassedVars() As String
Const keyCount As Integer = 54 ' 54 seems to be the number of parameter keys passed by default (for this web_app).
' there are more if there is a form involved (ie. from search page)
Dim oParams As String = ""
Try
With HttpContext.Current
If .Request.Params.AllKeys.Count > keyCount Then
For i As Integer = 0 To (.Request.Params.AllKeys.Count - (keyCount + 1))
oParams &= String.Format("{0}={1}{2}",.Request.Params.Keys.Item(i),.Request.Params(i),IIf(i < .Request.Params.AllKeys.Count - (keyCount + 1),";",""))
Next
End If
End With
Return oParams
Catch ex As Exception
Return Nothing
End Try
End Function
它为Request.Params对象擦除传递的变量,这些变量位于数组的开头(其余的是ASP参数).我很确定我已经看到了获得这些参数的不同方法,但我无法弄明白.有什么建议? 编辑 所以看起来我可以使用Request.URL.Query来实现这一点,我将对此进行调查并发回. 这是我想出的: Public Shared Function getPassedVars() As String
Dim oParams As String = ""
Dim qString As String = ""
Dim oSplit As New List(Of String)
Try
With HttpContext.Current
qString = .Request.Url.Query
If qString.Length > 0 Then 'do we have any passed variables?
If qString.StartsWith("?") Then qString = qString.Remove(0,1) 'remove leading ? from querystring if it is there
oSplit.AddRange(qString.Split("&"))
For i As Integer = 0 To oSplit.Count - 1
oParams &= String.Format("{0}{1}",oSplit.Item(i),IIf(i < oSplit.Count - 1,""))
Next
Return oParams
Else
Return Nothing
End If
End With
Catch ex As Exception
Return Nothing
End Try
End Function
到现在为止还挺好. 解决方法
Request.QueryString是一个NameValueCollection,因此获取“参数”的最简单方法是执行以下操作:
foreach (String s in Request.QueryString) {
Response.Write(s + " = " + Request.QueryString[s]);
}
你的职能在哪里?如果它在页面的代码中执行,那么你肯定不需要使用HttpContext变量. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – MVC4上的服务堆栈
- iis-7 – 经典ASP站点请求在IIS7中随机挂起
- 如何在IIS10中正确启动asp.net应用程序
- asp.net-mvc – 如果在@ Html.DisplayFor中有条件
- asp.net-mvc – ASP.NET MVC 3 RC和Azure?
- asp.net-mvc – 如何在多个Asp.net MVC应用程序中使用通用布
- asp.net-mvc – 从递归模型创建表单
- asp.net-mvc – 在MVC应用程序的实体框架中共享objectconte
- asp.net – web.config中的多个/不同的身份验证设置
- asp.net-mvc – 找不到CrystalImageHandler.aspx
推荐文章
站长推荐
热点阅读
