Vb.net 从查询字符串中拆分请求

Vb.net 从查询字符串中拆分请求,vb.net,Vb.net,我想知道在VB.net中,如何分割查询字符串的一部分来获取post请求 因此,如果我有一个输出如下的URL,我将如何获取ID部分 www.urlhere.com/name=whatever?id=someid 我需要抓住?id=的特定部分,并且我假设以下内容在VB.net中可以工作 someString = Request.QueryString("?id") 但是,这并不能获取查询字符串的正确部分。有人能告诉我哪里出了问题吗 谢谢,如果您想要这个:“?id=34” 试试这个: Di

我想知道在VB.net中,如何分割查询字符串的一部分来获取post请求

因此,如果我有一个输出如下的URL,我将如何获取ID部分

www.urlhere.com/name=whatever?id=someid
我需要抓住?id=的特定部分,并且我假设以下内容在VB.net中可以工作

someString = Request.QueryString("?id")
但是,这并不能获取查询字符串的正确部分。有人能告诉我哪里出了问题吗

谢谢,

如果您想要这个:“?id=34” 试试这个:

    Dim url As String = "www.urlhere.com/name=whatever?id=someid"

    Dim selectId As String = url.Substring(url.LastIndexOf("?id="), url.Length - url.LastIndexOf("?id="))
如果您只需要以下内容:“?id=”


如果您有可用的当前上下文(因此,如果您实际上是在需要读取请求查询字符串的web应用程序中执行此操作),则可以执行此操作

Dim id As String = System.Web.HttpContext.Current.Request.QueryString("id")

这应该抓住id中“=”后面的内容


一种彻底的方法来检查它,以便您可以看到它在哪个阶段出错:

Imports System.Web ' remember to add a reference to System.Web '

Module Module1

    Sub Main()
        Dim s = "http://www.urlhere.com/name=whatever?id=someid"
        Dim u = New Uri(s)
        Dim q = u.Query
        Dim parts = HttpUtility.ParseQueryString(q)
        Console.WriteLine(parts("id"))
        Console.ReadLine()
    End Sub

End Module

输出:someid

我有,但它无法获取实际ID。
Dim id as string
id = Request.QueryString("id")
Imports System.Web ' remember to add a reference to System.Web '

Module Module1

    Sub Main()
        Dim s = "http://www.urlhere.com/name=whatever?id=someid"
        Dim u = New Uri(s)
        Dim q = u.Query
        Dim parts = HttpUtility.ParseQueryString(q)
        Console.WriteLine(parts("id"))
        Console.ReadLine()
    End Sub

End Module