我正在ASP.NET 4.0中构建一个Web应用程序。
现在我不知道这个术语,所以它可能是一个愚蠢的标题,很容易找到,但我在发布之前试图找到解决方案。但我真的不知道这叫什么..?
问题:
如何从URL中读取变量?
假设我输入
www.mysite.com/search/John/Doe
我想直接从网址中取出“John”和“Doe”,并将它们设置为变量。
另外,在访问www.mysite.com时,如何添加,以便我的文本框中的信息在不重新加载页面的情况下将URL添加到后面?但仍处理我的请求?
答案 0 :(得分:1)
我认为您正在寻找URL映射/重写,它会解析您询问的URL。提取搜索参数将适用于www.mysite.com/search?FirstName=Joe&LastName=Doe。
ScottGu在这里有一篇关于URL映射/重写的文章:http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx
在这个论坛上完全回答这个问题太复杂了,但希望斯科特的文章能给你一个开始。它列出了几个选项,每个选项都有例子。
答案 1 :(得分:1)
如果您使用的是asp.net 4,则可以使用Url Routing,如下所示;
在 Globle.asax
中void Application_Start(object sender, EventArgs e)
{
//define your route pattern here
RouteTable.Routes.Add("SearchRoute",
new Route("Search/{Firstname}/{Lastname}",
new PageRouteHandler("~/SearchPage.aspx")));
}
www.mysite.com/search/John/Doe
在 SearchPage.aspx
中//access your route values here
string fName = RouteData.Values["Firstname"]; //John
string lName = RouteData.Values["Lastname"]; //Doe
答案 2 :(得分:0)
取决于,如果您使用普通的网络表单,它可能是这样的:
request.Querystring["parameter1"]
如果您正在使用MVC,那么它将在您的路由配置中定义:
Controller/Action/Parameters
您需要在WEBFORMS中搜索的概念是ViewState,这是一种幻想,asp.net必须看起来像你没有丢失表单数据