PDA

View Full Version : سوال در مورد routing



sh-eng
پنج شنبه 19 بهمن 1391, 10:47 صبح
سلام خسته نباشید
من از سیستم routing برای سایت استفاده کردم و آدرسم به این صورته : mysite.com/username
اینو که می زنم می ره تو صفحه ی مورد نظرم یه مشکلی که پیش میاد اینه که صفحه هایی که آدرسشون به این صورته : mysite.com/contact.aspx اینا هم به اون صفحه می ره که صفحه های عمومی اند
با توجه به این که من یه صفحه هایی هم دارم که آدرسشون اینطوریه : mysite.com/profile که صفحه ی مشخصات کاربرامه و از همون username داخلش استفاده می کنم من از کد زیر تو صفحه ای که بازدن آدرس mysite.com/username به اون صفحه می رم استفاده کردم:
try
{

username = Page.RouteData.Values["User"].ToString();
FormsAuthentication.SetAuthCookie(username, false);
GeneralTools.BindGridByQuery(GridView1, "ShowReg_View", "Id_reg", username);

}
catch
{
username = Page.RouteData.Values["User"].ToString();
FormsAuthentication.SetAuthCookie(username, false);
Response.Redirect("~/pages/" + username);

}
اگه try انجام بشه مشکلی ندارم اما وقتی به یه صفحه ی معمولی با آدرس mysite.com/contactus.aspx
می خواد بره میره تو catch و بازم مشکلی نیست هرچند کاربر لاگین شده به اون صفحه میره اگه به صفحه ی پروفایل بخوام برم اونوقت اسم صفحه رو به عنوان username میفرسته:افسرده:
از session نمی خوام استفاده کنم

morteza_mokhtari
پنج شنبه 19 بهمن 1391, 21:58 عصر
string uid = Page.RouteData.Values["uid"] as string;

if (uid != null)
{

DataTable dt = SDKClass.getProfilesByUsername(uid);
if (dt.Rows.Count > 0)
{
Label_Signature.Text = dt.Rows[0]["Signature"].ToString();
Label_BirthYear.Text = dt.Rows[0]["BirthYear"].ToString();
Label_HotmailID.Text = dt.Rows[0]["HotmailID"].ToString();

Label_Location.Text = dt.Rows[0]["Location"].ToString();

Label_PostCount.Text = SDKClass.Forums_PostCountForUser(uid).ToString();
Label_Username.Text = uid;
Label_YahooID.Text = dt.Rows[0]["YahooID"].ToString();
Label_Gmail.Text = dt.Rows[0]["GmailID"].ToString();
Label_University.Text = dt.Rows[0]["University"].ToString();
LabelCourse.Text = dt.Rows[0]["Course"].ToString();

DataTable dt1 = SDKClass.getUserByUsername(uid);
Label_DateRegister.Text = SDKClass.GetFarsiDate(Convert.ToDateTime(dt1.Rows[0]["CreateDate"]), false);
Label_LastLoginDate.Text = SDKClass.GetFarsiDate(Convert.ToDateTime(dt1.Rows[0]["LastLoginDate"]), false);
Label1.Text = dt1.Rows[0]["Website"].ToString();
}

}