Передача строки запроса с контролем входа в asp.net 4? - PullRequest
2 голосов
/ 15 сентября 2011

Сценарий:

Я делаю проект в C # ASP.NET 4.

У меня есть страница вопроса.Когда кто-то нажимает на вопрос (например, Link Button), он перенаправляется на страницу, где пользователь может дать ответ, но сначала ему необходимо войти в систему.Поэтому я помещаю кнопку Login to Answer, которая перенаправляет пользователя на GuestLogin.aspx с идентификатором вопроса, подобным этому:

protected void LoginToAnswwer_Click(object sender, EventArgs e)
{
    int qidrequest = int.Parse(Request.QueryString["qid"]);
    Response.Redirect("~/GuestLogin.aspx?qid=" + qidrequest);
    //This is working OK
}

А затем, когда я перенаправлен на GuestLogin.aspx, я помещаю ниже код в LoginButton встроенногоLogin Control.

protected void LoginButton_Click(object sender, EventArgs e)
{
    int qidrequest = int.Parse(Request.QueryString["qid"]);
    Response.Redirect("QDisplay.aspx?qid=" + qidrequest);
}

Что не работает.

Вопрос:

Как пройти querystring с помощью кнопки входа встроенного login control в asp.net 4?

Ответы [ 2 ]

2 голосов
/ 15 сентября 2011

Вы можете передать обратный URL на страницу входа, например:

Response.Redirect(String.Format("/auth/login.aspx?return={0}", Server.UrlEncode(Request.Url.AbsoluteUri)));

На странице входа после аутентификации пользователя:

Response.Redirect(Request.QueryString["return"]);
1 голос
/ 17 декабря 2011

Передача параметров с одной страницы на другую с использованием QueryString :

// Установка параметров строки запроса
Примечание: максимальная длина строки, через которую можно пройтиQueryString имеет значение 255.

string URL =“QueryString.aspx?Name=” + txtFirstName.Text + “&Address=” + txtAddress.Text + “&City=” + txtCity.Text ;  
 //After Setting the Querystring Paramter values Use Response.Redirect to navigate the page
 Response.Redirect(URL); 

В событии загрузки страницы на перемещаемой странице вы можете получить доступ к значениям параметра строки запроса, как показано ниже:

lblName.Text = Request.QueryString["Name"].ToString();   
lblAddress.Text = Request.QueryString["Address"].ToString();   
lblCity.Text= Request.QueryString["City"].ToString();

Вот как вы должны использовать QueryString для передачи параметров

...