2010-09-08 2 views
2

Когда кто-то входит в систему на моем сайте. Я хочу направить их на свою домашнюю страницу. Если у пользователя есть идентификатор 1. Они перейдут наПеренаправление на url на основе данных пользователя

http://www.test.com/Home.aspx?id=1 

У меня уже есть настройка входа и идентификатора. Я не уверен, как включить его в URL-адрес.

ответ

1

Вы используете аутентификацию с помощью форм?

Если это так, вместо использования RedirectFromLoginPage (который будет перенаправляться на любую страницу в вашем web.config), просто используйте FormsAuthentication.SetAuthCookie и сделайте свое собственное перенаправление.

Для этого вам необходимо использовать URL-адрес QueryString.

например

// forms auth code here, user is logged in. 
int id = 1; 
string redirectUrlFormat = "http://www.test.com/Home.aspx{0}"; 
string queryStringidFormat = "?id={0}"; 
Response.Redirect(string.Format(redirectUrlFormat, string.Format(queryStringidFormat, id))); 

Вы должны обрабатывать все QueryString параметры, URL, и т.д. (т.е. выше кода) в глобальной статической модели класса.

Таким образом, вы можете просто сказать:

Response.Redirect(SomeStaticClass.GetUserHomePageUrl(id)); 

В приемной странице (Home.aspx), используйте следующий код, чтобы получить идентификатор пользователя:

var userId = Request.QueryString["id"]; // again, this "magic string" should be in a static class. 

Надежда, которая помогает ,

3
Response.Redirect("http://www.test.com/Home.aspx?id=" + id); 
Смежные вопросы