Я задал несколько подобный вопрос. администрация Бэкенда в направляющих . Один из ответов упомянул пространства имен и именно это я реализовал.
Попробуйте это:
so.Cpage = "ContractChange.aspx?" & Request.RawUrl.Split("?")(1)
Не уверен насчет синтаксиса в VB.NET, но в C # вам просто понадобится сделать
string id = Request.QueryString.Get ("d");
Надеюсь, это поможет.
Чтобы получить текущую строку запроса, вы должны просто сделать что-то вроде следующего:
Dim query as String = Request.QueryString("d")
Это присвоит значение строки запроса "d" строковой переменной "query". Обратите внимание, что все значения строки запроса являются строками, поэтому, если вы передаете числа, вам нужно будет «преобразовать» эти строковые значения в числа (однако будьте осторожны с исключениями при приведении). Например:
Dim query as String = Request.QueryString("d")
Dim iquery as Integer = CType(query, Integer)
Свойство QueryString объекта Request представляет собой набор пар ключей имя / значение. В частности, это тип System.Collections.Specialized.NameValueCollection, и вы можете перебирать каждую из пар имя / значение следующим образом:
В VB.Net это можно сделать следующим образом.
Dim id As String = Request.Params("RequestId")
Если вы хотите обработать это как целое число, вы можете сделать следующее:
Dim id As Integer
If Integer.TryParse(Request.Params("RequestId"), id) Then
DoProcessingStuff()
End If