# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > ASP.NET Web Forms >  آموزش url routing در دات نت 4

## hamid_shrk

سلام، دیدم که دوستان زیاد در مورد url routing سوال میکنن گفتم بهتره آموزشش رو بزارم ، البته چون خودم وقت درست کردن مقالش رو ندارم از یک سایت دیگه کمک گرفتم چون اونجا هم کاملا درست توضیح داده.
ولی اگه پیرامون این مبحث سوالی بود خودم در خدممتون هستم .
..
ASP.NET 4.0 اين امكان را فراهم آورده است تا          بتوان همانند كنترلرهاي ASP.NET MVC به نگاشت URL ها در ASP.NET Web Forms          پرداخت.
         مثال زير نشان مي دهد كه چگونه مي توان با          استفاده از تايع جديد ()MapPageRoute در ASP.NET 4.0 آدرس          products/software را به صفحه Products.aspx كه در دايركتوري اصلي قرار          دارد منتقل كرد.
step2_thumb_1A897DA1.pngاولين پارامتر از متد ()MapRout نام خلاصه شده          مسير مي باشد. پارامتر دوم فيلتر URL مي باشد  و پارامتر سوم به          صفحه اي اشاره مي كند كه قرار است URL را كنترل كند. در صفحه Products.aspx          مي توان كدهايي همانند شكل زير نوشت كه با استفاده از خاصيت جديد          Page.RouteData در ASP.NET 4.0 مقدار پارامتر category را كه توسط          products/category نگاشته شده است را برگردانده و از آن استفاده كرد.step3_thumb_06FC1E00.pngعلاوه بر دسترسي برنامه نويسي شده به پارامترهاي          URL همانند شكل فوق، مي توان از <asp:routeparameter> در هر كنترل          DataSource در ASP.NET براي دسترسي به پارامتر URL استفاده كرد. به عنوان          مثال در زير عبارت <asp:routeparameter> براي برگرداندن مقدار پارامتر          @category از products/{category} در مسير URL بكار رفته است.
step4_thumb_5E7D3BEB.png
*برگرداندن URL ها در ASP.NET Web Form*
                           همانطور كه در ASP.NET به كمك مسيرگزيني URL، مسيرهاي دلخواه به عنوان مسير          اصلي انتخاب مي شوند مي توان براحتي مسيرهاي واقعي را نيز برگرداند. بعنوان          مثال در فوق وقتي URL مروط به products/{category} را نگاشتيم در واقع به          آن يك نام كاربرپسند مثلا" به نام "products-browse" نسبت داديم. حال مي          توان به راحتي با استفاده از متد ()Page.GetRouteUrl و با استفاده از          پارامترهاي آن مسير واقعي URL را برگرداند. مثال زير نحوه استفاده از اين          متد براي برگرداندن مسير اصلي URL كه با نام كاربر پسند مثلا"          "products-browse" نگاشته شده است را نشان مي دهد.
step4_thumb_5E7D3BEB.png

به تابع توضيح داده شده در فوق مي توان هم از          طريق كد نويسي در code-behind و هم از طريق markup نويسي در صفحه aspx دست          يافت.
           همچين مي توان با استفاده از متد ()Response.RedirectToRoute          بدون توجه به اينكه از MVC استفاده مي كنيم يا Web Form كاربران را به          مسيرهاي مختلفي كه با استفاده از مسيرگزيني URL نگاشته شده اند، منتقل كرد.         

*سناريوهايي براي اداره كردن PostBack ها*
           مسيرگزيني URL در ASP.NET 4.0 به طور كامل          سناريوهاي Postback را پشتيباني مي كند. بعنوان مثال اگر صفحه اي با آدرس          products/software را باز كنيد همه كنترل هاي سمت سروري آن المان html          بصورت <form action="/products/software"> را به client برميگردانند. كه          اين يعني حفظ كردن URL ها در هر Postback ،چيزي قبلا" برنامه نويسان با          استفاده از مادولهاي URL Rewriting براي فراهم ساختن آن نياز به كدنويسي          اضافه داشتند.
 

------------------------
*منبع :persiadevelopers*

----------


## fakhravari

با سلام
من یه سمپل درست کردم اما نمیدونم چرا ادرس عوض نمیشه اگر ممکن یه نگاهی بندازید .

----------


## hamid_shrk

باید اینجوری مینوشتید :

Response.Redirect("Products/"+TextBox1.Text.Trim());

حالا تو لود صفحتون Id رو اینجوری بخونید :

Page.RouteData.Values["Id"].ToString()

----------


## fakhravari

بله درست شد.
فقط این روش برای زمانی کاربرد داره که یه query string فرستاده میشود برای نمایش .
چون اگر دوباره از همان صفحه درخاصتی بیاید not page میزنه :متفکر: .
باید با try catch کنترل شود؟

----------


## hamid_shrk

> بله درست شد.
> فقط این روش برای زمانی کاربرد داره که یه query string فرستاده میشود برای نمایش .
> چون اگر دوباره از همان صفحه درخاصتی بیاید not page میزنه.
> باید با try catch کنترل شود؟


 تو Try catch که باید بزارید چون خیلی مشکلات بوجود میاد اگه نزارید.
اما دوباره هم میتونید اون صفحه رو با این دستور بخونید :

 Response.Redirect("../Products/"+مقدار);

حتما باید یک url هم با نام خود پیج به این صورت :

routes.MapPageRoute(
            "products", "products", "~/Products.aspx");

بنویسید تا بتونیم صفحه رو بدون پارامتر هم فراخوانی کنیم .

----------


## fakhravari

با سلام
برای ورژن 3.5 چیکار کنیم :خجالت:

----------


## mo.esmp

http://msdn.microsoft.com/en-us/magazine/dd347546.aspx برای 3.5

----------


## hamid_shrk

> http://msdn.microsoft.com/en-us/magazine/dd347546.aspx برای 3.5


ضمن تشکر ،
تو دات نت های پایین تر از Rewriting بیشتر استفاده میشه چون از Routing راحتتره،اما در دات نت 4 Routing خیلی راحت شده.

----------


## hamid_shrk

آقای فخر آوری تو سوالی که بصورت خصوصی پرسیده بودید فکر میکنم query string تون رو اینجوری نوشته بودید که خطا میداد.

Response.Redirect("Products.aspx?Id="+TextBox1.Tex  t.Trim());



تو این حالت باید query تون رو به این صورت بنویسید :

Response.Redirect("Products/"+TextBox1.Text.Trim());




که عبارت بعد از" / " همون کوئری استرینگتون هست.دیگه از ؟ استفاده نکنید.

----------


## fakhravari

با سلام
ممنون از جواب شما.
خوب یعنی در این کد            "Products", "products/{id}", "~/Products.aspx");
Products میشه صفحه ارسالی .
 products/{id}  میشه نمایش محصول با اون id .
~/Products.aspx صفحه مقصد .

خوب حالا نمیشه  products/{id}  رو به عدد دیگه ای تغیر داد چون در نهایت به این صورت نمایش میده WebSite6/Products/5

----------


## hamid_shrk

> خوب حالا نمیشه  products/{id}  رو به عدد دیگه ای تغیر داد چون در نهایت به این صورت نمایش میده WebSite6/Products/5


منظورتون از عدد دیگه چیه؟خوب اون Id رو شما هرچی بدید تو کوئری استرینگ ارسال میشه.

----------


## fakhravari

بله درسته.
ما id محصول را ارسال میکنیم.
برای نمایش برای مثال id = 10 میشه Products/10
نمیشه جای اون 10 یه چیز دیگه گذاشت

----------


## hamid_shrk

میتونید جای Id اسم محصول رو بفرستید ،اون وقت تو صفحه محصولات با title واکشی کنید دیتا رو ، تو url routin سعی کنید عدد نزارید چون خوانایی رو از بین میبره.

----------


## crazy_1892

سلام دوست عزیز من به شکل زیر استفاده کردم 

<a href='<%# Eval("ID","~/NewsShow/{0}") %>' title='<%# Eval("Sub") %>'>

ولی آدرس لینک را به شکل زیر نمایش میده
http://localhost:3641/Teacher-test/~/NewsShow/24

----------


## hamid_shrk

سلام ، بجاش از این استفاده کن :

<a href='<%# Eval("ID","../NewsShow/{0}") %>' title='<%# Eval("Sub") %>'>

----------


## crazy_1892

> سلام ، بجاش از این استفاده کن :
> 
> <a href='<%# Eval("ID","../NewsShow/{0}") %>' title='<%# Eval("Sub") %>'>


با سلام دوست عزیز با این روش هم حواب داد و آدرس را به شکل زیر تغییر می دهد
http://localhost:3641/NewsShow/27
در صورتی که باید به شکل زیر باشد
http://localhost:3641/Teacher-test/NewsShow/27
Sequence contains no elements

----------


## hamid_shrk

Teacher-test اسم پروژتونه؟

----------


## crazy_1892

بله  نام پروژه هست

----------


## hamid_shrk

خوب مشکلی نیست ، دستوری که من استفاده کردم میاد از root سایت شروع میکنه و فقط تو local مشکل داره ، البته اصلش اینه که از ~ استفاده کنید بجای /..

----------


## crazy_1892

دوست عزیزم من تعداد صفحات بالایی را می خوام تبدیل کنم دستوری نیست که بتونم تو local  تست کنم ؟؟

----------


## hamid_shrk

تو لوکال اسم پروژتون رو هم بزارید قبلش :
../Teacher-test من خودم به این مشکل که میخورم این کار رو میکنم

----------


## crazy_1892

سلام دوست عزیز صفحاتی که querystring  داره مشکلی نداره ولی...
اگه میشه لطف کن کدهای زیر را یک نگاه بنداز ببین کجاش مشکل داره

فایل Global

 routes.MapPageRoute(
           "NewsShow-browse", "NewsShow/{Id}.html", "~/NewsShow.aspx");


html:


 <a href='<%# Eval("ID","../Teacher-kari/NewsShow/{0}.html") %>' title='<%# Eval("Sub") %>'>


code-behind:


 DataClassesDataContext LL = new DataClassesDataContext();
            var query = from c in LL.news1s
                        where c.status == true && c.Id == int.Parse(Request.QueryString["Id"].ToString())
                        select new { c.Date, c.Sub, c.Descrip };

----------


## hamid_shrk

> Request.QueryString["Id"].ToString()


مشکل اول اینه که کوئری استرینگ رو تو این حالت باید اینجوری بگیری :

Page.RouteData.Values["Id"]

وبعد اینکه :



> <%# Eval("ID","../Teacher-kari/NewsShow/{0}.html") %>


کوئری استرینگ رو موقع ارسال نباید بین {} بذارید

----------


## crazy_1892

دوست عزیز وقتی می خوام شرطی را به شکل زیر چک کنم خطا میده باید چی کار کنم

Page.RouteData.Values["Page"].ToString() != null)

----------


## hamid_shrk

> دوست عزیز وقتی می خوام شرطی را به شکل زیر چک کنم خطا میده باید چی کار کنم
> 
> Page.RouteData.Values["Page"].ToString() != null)


خیلی سادس اینجوری بنویس :


Page.RouteData.Values["Page"] != null)

----------


## crazy_1892

دوست شرمنده بابا این همه سوال

من سایتم  آپلود کردم ولی خطا زیر را میده 
*500 - Internal server error.*

*There is a problem with the resource you are looking for, and it cannot be displayed.*

اینم متذکر بشم که بر روی یک دامین دیگر قبل از Routing آپلود کردم هیچ مشکلی نداره آیا کار خاص دیگری باید انجام بدم

----------


## xalerebvar

سلام به همگی،
مرسی از مقاله جالبتون راجع به Routing، یه سئوال داشتم
اگه بخواهیم به جای افزودن مقدار Route شده آنرا به ابتدای آدرس وب سایت (مانند Yourname.sitename.com) اضافه کنیم چکار بایسیی انجام بدیم
من دسترسی کامل به امکانات هاست پنلم دارم اما Ip اختصاصی ندارم آیا بدون داشتن Ip اختصاصی می توان اینکار رو انجام داد، تو یکی از تاپیک ها بحث شده بود اما مشکل من اینه که هر بار کاربر بخواد یه اسمی به اول آدرس اضافه کنه وب سایت من بالا نمی یاد و به آدرس سرور مراجعه می کنه

----------


## hamid_shrk

دقیق متوجه نشدم منظورتون رو ..
اگه منظ.رتون اینه که با کلیک رو یه لینک به یک سایت خارج از پروژه بره متاسفانه این امکان وجود نداره.

----------


## xalerebvar

> دقیق متوجه نشدم منظورتون رو ..
> اگه منظ.رتون اینه که با کلیک رو یه لینک به یک سایت خارج از پروژه بره متاسفانه این امکان وجود نداره.


 حمید جان منظورم همون کاریه که سرویس بلاگفا انجام میده یعنی هرکاربری که با یک UserName رجیستر می کنه همون UserName بشه ساب دامین سایت(البته از نوع مجازیش چون امکان ساختن ساب دامین واقعی برای هر کاربر و در همان لحظه وجود نداره) مثلا شما تو وب سایت ثبت نام می کنی و با اسم کاربریت یه ساب دامین مجازی ساخته بشه (مانند http://UserName.sitename.com).
ممنون

----------


## hamid_shrk

این امکان وجود نداره اما میتونی مثل فیس بوک نام کاربری هرکسی رو بزاری پشت آدرس سایت :
http://www.sitename.com/UserName

----------


## crazy_1892

سلام دوست عزیز من از  routing  استفاده کردم پس از آپلود کار نمیکنه آیا امکان داره به خاطر اینکه از websitepanel استفاده می کنم باشم؟؟

----------


## FirstLine

> سلام دوست عزیز من از  routing  استفاده کردم پس از آپلود کار نمیکنه آیا امکان داره به خاطر اینکه از websitepanel استفاده می کنم باشم؟؟


با سلام
  من هم همین مشکل رو دارم
https://barnamenevis.org/showthread.php?322069

  خطا نمیده ولی کار نمیکنه
  آدرسش http://robatnews.net/NewsIT   که در اصل باید آدرس http://robatnews.net/NewsIT.aspx را لوود کنه و یا http://robatnews.net/news902  که در اصل باید آدرس  http://robatnews.net/news.aspx?id=902  را لوود کند اما کار نمیکند
بصورت لوکالی روی کامپیوتر خودم کار میکنه ولی وقتی آپلوود میشه روی هاست کار نمیکنه


با تشکر

----------


## programer-ir

سلام در فایل وب کانفیگ این خط رو بنویسید و پروژه رو روی لوکال یک بار اجرا بعد دوباره آپلود کنید


 <modules runAllManagedModulesForAllRequests="true"></modules>

----------


## FirstLine

> سلام در فایل وب کانفیگ این خط رو بنویسید و پروژه رو روی لوکال یک بار اجرا بعد دوباره آپلود کنید
> 
> 
>  <modules runAllManagedModulesForAllRequests="true"></modules>


با سلام
  دوست عزیز خیلی ممنون.
  این خط کد را در چه قسمت و زیر کدام یک از نودهای وب کانفیگ اضافه کنم؟
با تشکر

----------


## hamid_shrk

سلام باید این کد رو به وب کانفیگ اضافه کنید که دوستمون هم اشاره فرمودن:

<system.webServer>
        <modules runAllManagedModulesForAllRequests="true"/>
    </system.webServer>

----------


## Rohollaes

روی هاست جواب نمیده, باید چیکا کنم؟
دستور modules رو توی وب کانفیگ که قرار میدم خطای 500 رو میده
اما روی لوکال همه چی درسته

----------


## Hossein Bazyan

سلام 
نوبتی هم باشه نوبت منه که سوال بپرسم!

مال من همه چیز خوب کار میکنه فقط سه مشکل داریم 


من کدهای خواندن پارامترها رو در فرم لود قرار دادم و پس از دیباگ متوجه شدم که فرم لود به تعداد زیاد دفعات فراخوانی میشهدوم اینکه  فقط در فراخوانی اول پارمترها رو میخونه و در بقیه دستورات جاوا یا نام عکسها یا علامت ~ را میخونه ایا راهی هست که بشه اینها رو نخوند ؟ من از Ignore خواستم استفاده کنم اما نشد شاید هم بلد نبودم.سوم اینکه من صفحه ای دارم که از صفحات مختلف با پارامترهای مختلف فراخوانی میشه مثلا از صفحه ای فقط دو پارامتر ارسال میشه و از یه صفحه همه پارامترها ارسال میشن . حال برای خوانده صفحه ای که فقط دو پارامتر داره باید چکار کنم ؟ اگر بجای بقیه پارامترها از / استفاده کنم که خیلی ناخوانا میشه و اگر استفاده نکنم نمیشه

----------


## hamid_shrk

> من کدهای خواندن پارامترها رو در فرم لود قرار دادم و پس از دیباگ متوجه شدم که فرم لود به تعداد زیاد دفعات فراخوانی میشه


یعنی چی؟



> دوم اینکه  فقط در فراخوانی اول پارمترها رو میخونه و در بقیه دستورات جاوا  یا نام عکسها یا علامت ~ را میخونه ایا راهی هست که بشه اینها رو نخوند ؟  من از Ignore خواستم استفاده کنم اما نشد شاید هم بلد نبودم.


متوجه منظورتون نشدم.



> سوم اینکه من صفحه ای دارم که از صفحات مختلف با پارامترهای مختلف فراخوانی  میشه مثلا از صفحه ای فقط دو پارامتر ارسال میشه و از یه صفحه همه  پارامترها ارسال میشن . حال برای خوانده صفحه ای که فقط دو پارامتر داره  باید چکار کنم ؟ اگر بجای بقیه پارامترها از / استفاده کنم که خیلی ناخوانا  میشه و اگر استفاده نکنم نمیشه


برای اینکار میتونید برای اون صفحه چندین روتینگ بنویسید.
مثلا یکی واسه اینکه فقط با اسم خود صفحه فراخوانی شد بازش کنه.
یکی برای اینکه با 2 تا پارامتر
یکی برای اینکه با 4 تا پارامتر
و الی آخر

----------


## Hossein Bazyan

> یعنی چی؟
> 
> متوجه منظورتون نشدم.
> 
> برای اینکار میتونید برای اون صفحه چندین روتینگ بنویسید.
> مثلا یکی واسه اینکه فقط با اسم خود صفحه فراخوانی شد بازش کنه.
> یکی برای اینکه با 2 تا پارامتر
> یکی برای اینکه با 4 تا پارامتر
> و الی آخر


 سلام
میشه یه مثال بزنید ؟

----------


## hamid_shrk

بله :

System.Web.Routing.RouteTable.Routes.MapPageRoute(  "home",
           "home",
           "~/home.aspx");
        System.Web.Routing.RouteTable.Routes.MapPageRoute(  "home",
          "home/{Product}",
          "~/home.aspx");
        System.Web.Routing.RouteTable.Routes.MapPageRoute(  "home",
          "home/{Product}/{Name}",
          "~/home.aspx");

----------


## Hossein Bazyan

> دوم اینکه فقط در فراخوانی اول پارمترها رو میخونه و در بقیه دستورات جاوا یا نام عکسها یا علامت ~ را میخونه ایا راهی هست که بشه اینها رو نخوند ؟ من از Ignore خواستم استفاده کنم اما نشد شاید هم بلد نبودم.


سلام
مشکل سوم  حل شد اما مشکل بالا هنوز مونده 
قبلا که از Routing  استفاده نمیکردم Page_load یکبار فراخوانی میشد اما الان بیشتر از ده بار فراخوانی میشه و فقط بار اول پارامترها را درست میگیرد برای بارهای دیگر یه چیزهای عجیبی را به پارامترها نسبت میدهد 
اینهم کدهای من برای گرفتن پارامترها 

 arId = Page.RouteData.Values("arId").ToString


اگر مثلا پارامتر ارسالی به این متغییر Bazyan  باشد در اولین فراخوانی Page_load مقدار Bazyan را به متغییر arId میدهد اما تابع Page_load دوباره و چندین باره فراخوانی میشه و هر بار یه مقدار عجیب به arId نسبت داده میشه مثلا jquery-ui.min.js یا onderdeel.png به متغییر arId نسبت داده میشود
در ضمن مقادیر jquery-ui.min.js یا onderdeel.png یه همه مقادیر نسبت داده شده به متغییر اجزا یا نام خود فایلهایی است که در برنامه استفاده شده است. 
در شکل زیر من چهار بار فراخوانی را نوشته ام ( البته حدود 10 بار page_load فراخوانی میشه ) که فقط بار اول مقدار صحیح برگشت داده شده است.

----------


## Hossein Bazyan

سلام

حمید خان حلش کردم. مشکل از مسیرها بود مثلا برای چسپاندن فایل Css من به شکل زیر استفاده کرده بودم 

<link href="~/stylesheets/tabs/jquery.tabs-ie.css" rel="stylesheet" type="text/css" />
که باید به شکل زیر استفاده میکردم 
<link href="http://www.broesk.nl/stylesheets/tabs/jquery.tabs-ie.css" rel="stylesheet" type="text/css" />
که مورد فوق باید در تمامی عکسها و فایلهای جاوا و غیره تغییر میکرد حالا فقط یک بار Page_load فراخوانی میشه

----------


## hamid_shrk

کار درستی نیست که بخواید آدرس سایت رو دستی بذارید پشتش.
فکر میکنم اگه با این دستور آدرس بدید مشکلتون حل بشه چون من اینکارو کردم:
<link href="../stylesheets/tabs/jquery.tabs-ie.css" rel="stylesheet" type="text/css" />

----------


## Hossein Bazyan

سلام 
امتحان کردم نمیشه باز هم فراخوانی میکنه . اما مهم نیست به این شکل هم خوبه 
به هر حال ممنون . من این مطلبو نمیدانستم و از شما یاد گرفتم

----------


## ASP.NET2

سلام .
یه سوال داشتم ! اگه بخواییم که برا صفحه هایی که static هستن این کارو بکنیم چطور باید عمل کنیم؟
برا مثال : من می خوام که صفحه yourdomain.com/about.aspx  به صورت yourdomain.com/about نشون داره بشه.
من برا این کار تو فایل Global این کارو کردم:

 public static void RegisterRoutes(RouteCollection routes)
        {
           RouteTable.Routes.MapPageRoute("about","about","~/about.aspx");

    

        }

        protected void Application_Start(object sender, EventArgs e)
        {
            RegisterRoutes(RouteTable.Routes);
        }

ولی در مورد اینکه وقتی رو hyperlink کلیک میشه مشکل داره >> 
اگه به این صورت باشه که اصلا navigate نمیشه و فقط بصورت text نمایش داده میشه 


```
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#Page.GetRouteUrl("about")%>'>HyperLink</asp:HyperLink>
```

واگه به این صورت نوشته شه >>


```
 <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%Page.GetRouteUrl("about")%>'>HyperLink</asp:HyperLink>
    
```

خطا میده
*Server Error in '/' Application.*

* HTTP Error 400 - Bad Request.* 

*Version Information:* ASP.NET Development Server 10.0.0.0

----------


## ramin149

با سلام و خسته نباشید

من دارم یک سایت برای پزشکان طراحی می کنم ، یک پوشه به نام Doctors دارم که داخل اون یک صفحه به نام Articles.aspx وجود داره می خوام از طریف repeter  وقتی کلیک میکنه روی نمایش ، آدرس زیر نمایش داده بشه  http://localhost:6838/Doctors/  و حتی اسم صفحه هم نمایش داده نشه ، لازم به ذکره که مجبورم 2 پارامت ارسال کنم یک برای کد مقاله و یکی کد پزشک چطور باید این کار رو انجام بدم 
  مسیر مورد نظرم رو به این شکل نمایش بده

----------


## ramin149

چطور به جای id عنوان رو قرار بدیم ؟؟؟

باید دراخل global  هم تغییرات ایجاد کنیمم؟

----------


## hamid_shrk

دوست عزیز شما خودتون دارید میگید که میخواید پارامتر بفرستید پس لازم هست که این پارامتر ها رو تو آدرستون بیارید.
چند راه حل وجود داره :
1- کد دکتر رو + کد مقاله در آدرس صفحه قرار بدید : 



> http://localhost:6838/Doctors/1254-251


2 - به کد بالا عنوان مقاله رو هم اضافه کنید ولی باهاش کاری نداشته باشید (درست مثل آدرس تاپیک های همین سایت برنامه نویس)



> doctors/1254-251-چشم-پزشکی-در-ایران


3 - کلا از عنوان ها بجای کدها استفاده کنید و دیتا رو هم با این عنوان ها از دیتابیس واکشی کنید :




> Doctors/Rezaei/چشم-پزشکی-در-ایران


و همینطور ترکیب روشهای گفته شده.
* البته نمیدونم چرا این ادیتور فارسی ها رو میاره اول!!!! منظور اینه که باید آخر قرار بگیرند عنوان ها
موفق باشید

----------


## ramin149

ممنونم چطور به جای id عنوان رو قرار بدم ؟؟؟ میشه تضیح بدید ؟؟ من روشی که شما گفتید رو استفاده کردم ولی حالا میخوام به جای id همون عنوان رو بفرستم ولی در صفحات بعد از id بتونم استفاده کنم

----------


## kingmech

> ممنونم چطور به جای id عنوان رو قرار بدم ؟؟؟ میشه تضیح بدید ؟؟ من روشی که شما گفتید رو استفاده کردم ولی حالا میخوام به جای id همون عنوان رو بفرستم ولی در صفحات بعد از id بتونم استفاده کنم


برای اینکار باید از سشن استفاده کنید

----------


## hamid_shrk

> برای اینکار باید از سشن استفاده کنید


دوست عزیز دقت کنید که ایشون دارن روی یک لینک در ریپیتر کلیک میکنند و برای ساخت سشن یا باید از جاوا اسکریپت استفاده کنند یا تو کد بیهاین اینکارو کنن که خیلی پیچیده میشه.



> ممنونم چطور به جای id عنوان رو قرار بدم ؟؟؟


چطور دارید Id  رو میفرستید الان؟با Eval دیگه؟؟
خوب حالا بیاید فیلد عنوان رو بزارید تو eval وبرای خواندن اطلاعات هم با id اطلاعات رو از دیتابیس نخونید ، بلکه عنوان رو که بعنوان پارامتر فرستادید بخونید (آموزش نحوه خواندن پارامتر از url در پست اول گفته شده) و با توجه به اون عنوان اطلاعات رو select کنید مثلا :

SELECT * FROM Table WHERE Title=@Title

----------


## b.paseban

سلام بر همه دوستان.
آموزش خوب و مفیدی بود.
من متنی رو بعنوان Route URL استفاده کردم ولی فضاهای خالی در url با علامت 20% نمایش داده میشه.
برای حل این مسکل چکار باید کرد.
ممنون.

----------


## kingmech

> سلام بر همه دوستان.
> آموزش خوب و مفیدی بود.
> من متنی رو بعنوان Route URL استفاده کردم ولی فضاهای خالی در url با علامت 20% نمایش داده میشه.
> برای حل این مسکل چکار باید کرد.
> ممنون.


 وقتی دارید ادرس رو میسازید  فاصله رو با - پر کنید

----------


## b.paseban

میشه با کد راهنمایی کنید؟

----------


## hamid_shrk

> سلام بر همه دوستان.
> آموزش خوب و مفیدی بود.
> من متنی رو بعنوان Route URL استفاده کردم ولی فضاهای خالی در url با علامت 20% نمایش داده میشه.
> برای حل این مسکل چکار باید کرد.
> ممنون.


 نه نباید این اتفاق بیوفته!!
میتونم کدتون رو ببینم (قسمتی که لینک رو دارید میفرستید به صفحه جدید)؟



> وقتی دارید ادرس رو میسازید  فاصله رو با - پر کنید





> میشه با کد راهنمایی کنید؟


از این کد میتونید استفاده کنید :

string url = "new page";
        url = url.Replace(" ", "-");
        Response.Redirect("news/"+url);

----------


## b.paseban

با تشکر از جواب شما.
من در صفحه ی اصلی(default.aspx)تعدادی خبر نمایش می دم که با یه hyperlink اون رو به یه صفحه ی دیگه (news.aspx >>>همراه با ارسال پارامتر title) هدایت می کنم به شکل زیر:

<asp:HyperLink ID="hpl" runat="server" Text='<%#Eval("Title")%>'  NavigateUrl='<%# Eval("Title","~/news/{0}") %>' Target="_blank"></asp:HyperLink>

در صفحه news.aspx این پارامتر رو با استفاده از یه sqldatasource (کد زیر) دریافت میکنم و داخل یه datacontrol نمایش میدم(داخل یه gridview).

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
            DataKeyNames="Title" DataSourceID="SqlDataSource1">
            <Columns>
                <asp:BoundField DataField="NewsID" HeaderText="NewsID" InsertVisible="False" ReadOnly="True"
                    SortExpression="NewsID" />
                <asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />
                <asp:BoundField DataField="Description" HeaderText="Description" SortExpression="Description" />
            </Columns>
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:CS_Routing %>"
            SelectCommand="SELECT [Title], [Description], [Body], [NewsID] FROM [Tbl_News] WHERE ([Title] = @Title)">
            <SelectParameters>
                <asp:RouteParameter Name="Title" RouteKey="Title" Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>

کدهای global.asax هم به شکل زیر هست:

protected void Application_Start(object sender, EventArgs e)
        {
            RegisterRoutes(RouteTable.Routes);
        }

        public static void RegisterRoutes(RouteCollection routeCollection)
        {
            routeCollection.MapPageRoute("RouteForCustomer", "news/{Title}", "~/news.aspx");

        }


ممنون می شم به چند تا سوال من پاسخ بدین.
1:روش ارسال چند پارامتر و دریافت اون در صفحه ی دیگه چطوریه؟
2:برای اینکه کاربر بعد از وارد کردن آدرس news.aspx نمایش این آدرس رو بصورت news ببینه چه کار باید کرد؟(بدون ارسال پارامتر از صفحه ای دیگه)
3:چطوری میشه برای چند صفحه دیگه همین کار رو انجام داد؟(نمایش url به صورت دلخواه)

----------


## ASP.NET2

کسی نتونست سوال منو جواب بده ؟
این پست

----------


## hamid_shrk

دوست عزیز الان منظورتون رو متوجه شدم ، تو آدرس بار اسپیس رو به خوبی نشون میده اما تو عنوان صفحه %20 میزاره درسته؟؟
برای رفع این مشکل تو page_load صفحه مقصد این کد رو بنویسید :

Page.Title = Page.RouteData.Values["Title"].ToString();

-----------



> 1:روش ارسال چند پارامتر و دریافت اون در صفحه ی دیگه چطوریه؟


نحوه تعریفش اینطوریه :



> routeCollection.MapPageRoute("RouteForCustomer", "news/{Title}/{date}", "~/news.aspx");


نحوه خواندن :

Page.Title = Page.RouteData.Values["Title"].ToString();
etring date = Page.RouteData.Values["date"].ToString();

-----------------------



> 2:برای اینکه کاربر بعد از وارد کردن آدرس news.aspx نمایش این آدرس رو  بصورت news ببینه چه کار باید کرد؟(بدون ارسال پارامتر از صفحه ای دیگه)


اگه مستقیم بنویسه .aspx رو بعید میدنم راهی وجود داشته باشه (اگه هم باشه من بلد نیستم متاسفانه)
-----------------------



> 3:چطوری میشه برای چند صفحه دیگه همین کار رو انجام داد؟(نمایش url به صورت دلخواه)


به راحتی !! کافیه تو همون global.asax برای هر صفحه تعریف کنید :

routeCollection.MapPageRoute("RouteForCustomer", "news/{Title}", "~/news.aspx");
routeCollection.MapPageRoute("home", "home", "~/home.aspx");
routeCollection.MapPageRoute("contact", "contact", "~/contact_us.aspx");

موفق باشید

----------


## hamid_shrk

> کسی نتونست سوال منو جواب بده ؟
> این پست


 با سلام ،
دوست عزیز نمیفهمم چرا ارور میگیرید چون من هم اینکار رو کردم و ربطی به استاتیک و داینامیک بودنش نداره مثال :

routes.MapPageRoute("order",
            "order",
            "~/order.aspx");

و توی لینکم هم اینطوری آدرس دادم :


```
<a href="order">سفارش آنلاین</a>
```

و داره کار میکنه.
ببینید شما تو کجا هستید که وقیتی رو لینک کلیک میکنید کار نمیکنه ؟ اگه یک مسیر جلوتر هستید باید با ایتفاده از ../ پشت لینک کار بکنه حتما

----------


## ramin149

> دوست عزیز دقت کنید که ایشون دارن روی یک لینک در ریپیتر کلیک میکنند و برای ساخت سشن یا باید از جاوا اسکریپت استفاده کنند یا تو کد بیهاین اینکارو کنن که خیلی پیچیده میشه.
> 
> چطور دارید Id  رو میفرستید الان؟با Eval دیگه؟؟
> خوب حالا بیاید فیلد عنوان رو بزارید تو eval وبرای خواندن اطلاعات هم با id اطلاعات رو از دیتابیس نخونید ، بلکه عنوان رو که بعنوان پارامتر فرستادید بخونید (آموزش نحوه خواندن پارامتر از url در پست اول گفته شده) و با توجه به اون عنوان اطلاعات رو select کنید مثلا :
> 
> SELECT * FROM Table WHERE Title=@Title


 
مشکل اینجاست که ممکنه چند عنوان با نام های مشابه وجود داشته باشه مثلا دو پزشک با یک نام  ، بعد تکلیف چیه؟

----------


## hamid_shrk

> مشکل اینجاست که ممکنه چند عنوان با نام های مشابه وجود داشته باشه مثلا دو پزشک با یک نام  ، بعد تکلیف چیه؟


 بله شما درست میفرمایید ، به نظر من بهتره که شما id رو بفرستید به صفحه جدید و با id کار کنید ولی برای خوانایی با یک "-" عنوان رو هم اضافه کنید ، مثلا به آدرس صفحات تو همین برنامه نویس دقت کنید ، الان همین تاپیکی که توش هستیم رو شما چنانچه با این آدرس هم بزنید باز میشه : https://barnamenevis.org/showthread.php?317763
این یعنی عنوان تاپیک هیچ نقشی تو واکشی اطلاعات از دیتابیس نداره و صرفا برای خوانایی و سئو هست ، پیشنهاد من اینه که شما هم از همین روش استفاده کنید.

----------


## imanasp

دوستان من میخام این آدرس /CategoryList.aspx?value=categoryId به این  Category-List/1 تغییر کنه با Routing و با .net 4.0
من این شکلی نوشتم ولی جواب نداد:
void RegistreRoutes(System.Web.Routing.RouteCollection routes)
    {
        routes.MapPageRoute(
            "Category-List",
            "CategoryList/CategoryId",
            "~/CategoryList.aspx"
            );
    }

----------


## imanasp

دوستان عزیز القدر من بهش نیاز دارم لطفا راهنمایی کنید

----------


## ramin149

> دوستان من میخام این آدرس /CategoryList.aspx?value=categoryId به این  Category-List/1 تغییر کنه با Routing و با .net 4.0
> من این شکلی نوشتم ولی جواب نداد:
> void RegistreRoutes(System.Web.Routing.RouteCollection routes)
>     {
>         routes.MapPageRoute(
>             "Category-List",
>             "CategoryList/CategoryId",
>             "~/CategoryList.aspx"
>             );
>     }



باید به این صورت بنویسید 


  void RegistreRoutes(System.Web.Routing.RouteCollection routes)
        {
            routes.MapPageRoute(
                "Category-List",
                "CategoryList/{CategoryId}",
                "~/CategoryList.aspx"
                );
        }
    }




پارامتر های دریافتی رو باید در {} قرار بدید

----------


## ramin149

با سلام و خسته نباشید

من از url roting واسه پروژه ام استفاده کردم ولی به یک مشکل برخورد کردم ، مشکل اینجاست که بعد از rout کردن به صفحه مورد نظر کلیه لینک های صفحه رو تحت تاثیر قرار میده ، مثلا یک لینک دارم به صورت زیر 
localhost:2160/News/1/

حالا روی هر لینک که کلیک میکنم به انتهای لینک قبلی متصل میشه  چیکار کنم ؟؟؟

----------


## Hossein Bazyan

> با سلام و خسته نباشید
> 
> من از url roting واسه پروژه ام استفاده کردم ولی به یک مشکل برخورد کردم ، مشکل اینجاست که بعد از rout کردن به صفحه مورد نظر کلیه لینک های صفحه رو تحت تاثیر قرار میده ، مثلا یک لینک دارم به صورت زیر 
> localhost:2160/News/1/
> 
> حالا روی هر لینک که کلیک میکنم به انتهای لینک قبلی متصل میشه  چیکار کنم ؟؟؟



سلام همین مشکل رو منم داشتم حتی لینکهای css و جاوا و جی کوئری هم رو حت تاثیر قرار میداد . همینجا هم پرسیدم اما به جواب نرسیدم در آخر لینکهای css و jQeury  و عکسها و غیره را  بصورت کامل نوشتم مشکل حل شد.

----------


## ramin149

> سلام همین مشکل رو منم داشتم حتی لینکهای css و جاوا و جی کوئری هم رو حت تاثیر قرار میداد . همینجا هم پرسیدم اما به جواب نرسیدم در آخر لینکهای css و jQeury  و عکسها و غیره را  بصورت کامل نوشتم مشکل حل شد.



برای من امکان این تغییری که شما گفتید وجود نداره ، من لینک هام پویا هستند ، خودشون پارامتر میگیرند

----------


## Hossein Bazyan

> برای من امکان این تغییری که شما گفتید وجود نداره ، من لینک هام پویا هستند ، خودشون پارامتر میگیرند


سلام 
خوب لینکهای منهم پارامتر میگیرند منظور مرا نفهمیدید. من به پارامترها کاری ندارم .
فرض کنیم که یه عگی داریم در لوکیشن 
/images/template/test.png/~
منظورم من دقیقا آدرس قبل از images است که بصورت زیر تعریف کرده ام 


```
http://www.test.nl/images/template/test.png
```

برای اینکه لوکال با آن لاین هم همیشه سنکرون باشند و مجبور نباشم بعد از اینکه فایلها را به سرور منتقل کردم هر بار آدرس لوکال را با آدرس آن لاین عوض کنم در قسمت Connectionstring در فایل web.config هم تگی ساخته ام بنام WebPath که در لوکال مقدار آنرا با localhost/ و در آن لاین هم با مقدار http://www.test.nl/ مقدار دهی کرده ام و در آدرس بالا بجای آدرس سرور این مقدار را از وب کانفیگ خوانده و قرار میدهم.

----------


## kingmech

چجوری برا ساب دامین  استفاده کنیم ازش

----------


## monika

<a href='<%# Eval("ID","~/NewsShow/{0}") %>' title='<%# Eval("Sub") %>'>

دوست عزیز Subدراینجا چی هست؟

----------


## monika

دوستان من در قسمت مدیریتم می خوام لیست لینک صفحات رو در جلو Titleهرصفحه در LABELبه مدیر نشون بدم و اون وقتی میخواد در ادیتور لینکی به صفحات داشته باشه راحتآدرس سایت رو کپی کنه و در UrlادیتورPASTEکنه برنامه روتااینجا به این صورت نوشتم

<asp:EntityDataSource ID="EntityDataSource2" runat="server" 
                                ConnectionString="name=DrEntities" DefaultContainerName="DrEntities" 
                                EnableFlattening="False" EntitySetName="Pages">
                            </asp:EntityDataSource>
                            <asp:Repeater ID="rpPages" runat="server" DataSourceID="EntityDataSource1">
                            <HeaderTemplate>
                            <ul>
                            </HeaderTemplate>
                            <ItemTemplate>
                            <li>
                                <asp:HyperLink ID="hlPage" runat="server" Text='<%#Eval("PageTitle") %>' NavigateUrl='<%#Eval("PageID","~/ShowPages.aspx?PageID={0}") %>'>HyperLink</asp:HyperLink>
                                ") %>'>
                                <asp:Label ID="PageTextLabel" runat="server" Text='<%# Eval(""PageID","../pages/{0}"") %>' />
                            </li>
                            </ItemTemplate>
                            <FooterTemplate></ul></FooterTemplate>
                            </asp:Repeater>


حالافقط در قسمت Textمربوط به Labelآدرس هرسایت روچطور میتونم بنویسم؟

----------


## mohsen_f_b

سلام
دوستان بار اول که دارم در پروژه از این Url Routing استفاده می کنم. کلی مشکل با URL ها دارم. لطفا راهنمایی بفرمایید.
من مشکلی با QueryString اینا ندارم همش درست کار می کنه.
مشکل من اینجاست که یک لینک دارم به این شکل www.YourDomin.ir/Article/1/TestArticle
حالا توی اون Page چندتا لینک دارم. اون لینکها اینطوری نشون میده www.YourDomin.ir/Article/1/TestArticle/News وقتی علامت ~ هم میزارم به این شکل میشه www.YourDomin.ir/Article/1/TestArticle/~/News
از tag <a>دارم استفاده می کنم. کل لینک های که داخل سایت هست به همین مشکل خورده. مثلا http://www.YourDomin.ir/Article/1/Te...www.googel.com
چکار کنم که همه لینک ها درست بشه؟ آخه توی فرم های ورودی طرف می تونه لینک به مطلب بده من که نباید دونه دونه بشینم اونارو اصلاح کنم.
کل برنامه خوابیده. لطفا کمک کنید.

Global.asax

        RouteTable.Routes.MapPageRoute("About-us", "About-us", "~/About-us.aspx");
        RouteTable.Routes.MapPageRoute("Article", "article/{articleid}/{articlename}", "~/Article.aspx");
        RouteTable.Routes.MapPageRoute("Contact-us", "Contact-us", "~/Contact-us.aspx");
        RouteTable.Routes.MapPageRoute("Default", "Default", "~/Default.aspx");
        RouteTable.Routes.MapPageRoute("Service", "Service/{ServiceID}/", "~/Service.aspx");


باتشکر
موفق باشید

----------


## hamid_shrk

سلام،
دوست عزیز زیاد متوجه نشدم مشکل دقیق کجاست، اگه امکان داره کد های اون صفحه ای رو که توش به مشکل خوردید رو بزارید تا بررسی کنم.

----------


## orca13

سلام!
آقا من نزدیک دو ساعته دارم این تاپیک و تاپیک شبیه سازی و MSDN رو میخونم، آخرم نفهمیدم باید چجوری ازین روش استفاده کنم!

اگه لطف کنید در مورد تغییرنام صفحاتی ک در روت هستند (مثلا Default و Contact و...) توضیح بدید، چجوری باید عمل کنم.
به طور مثال من واسه Default.aspx در Global.asax اینجوری نوشتم:
void registerRoute(RouteCollection routes)
    {
        RouteTable.Routes.MapPageRoute("", "Home", "~/Default.aspx");
    }
    void Application_Start(object sender, EventArgs e) 
    {
        registerRoute(RouteTable.Routes);
    }

و چیزی ک واسم مهمتره:
من یه صفحه دارم به نام User.aspx، داخلش یه سری کنترل هستش ک اطلاعات کاربران رو (براساس اسمشون ک از طریق Query string فرستاده میشه) نمایش میده. User.aspx?user=USERNAME

در صفحه اول سایت، یه GridView گذاشتم ک لیست کاربران ثبت نام شده رو نمایش میده (به صورت یک HyperLink) ک با کلیک روی هر نام به همین صفحه User ارجاع داده میشه (به همراه Query string مختص به خودش). حالا میخوام آدرس www.mydomain.com/User.aspx?user=USERNAME به www.mydomain.com/USERNAME تبدیل بشه.
ممنون میشم توضیح کامل بدین.

----------


## orca13

دوستان لطفا یه راهنمایی بکنید!
ممنون

----------


## rezaei manesh

> سلام
> دوستان بار اول که دارم در پروژه از این Url Routing استفاده می کنم. کلی مشکل با URL ها دارم. لطفا راهنمایی بفرمایید.
> من مشکلی با QueryString اینا ندارم همش درست کار می کنه.
> مشکل من اینجاست که یک لینک دارم به این شکل www.YourDomin.ir/Article/1/TestArticle
> حالا توی اون Page چندتا لینک دارم. اون لینکها اینطوری نشون میده www.YourDomin.ir/Article/1/TestArticle/News وقتی علامت ~ هم میزارم به این شکل میشه www.YourDomin.ir/Article/1/TestArticle/~/News
> از tag <a>دارم استفاده می کنم. کل لینک های که داخل سایت هست به همین مشکل خورده. مثلا http://www.YourDomin.ir/Article/1/Te...www.googel.com
> چکار کنم که همه لینک ها درست بشه؟ آخه توی فرم های ورودی طرف می تونه لینک به مطلب بده من که نباید دونه دونه بشینم اونارو اصلاح کنم.
> کل برنامه خوابیده. لطفا کمک کنید.
> 
> ...


سلام دوستان من هم دقیقا همین مشکل رو دارم
یعنی وقتی از این روش برای آدرس صفحات استفاده میکنم تو این صفحات ادرس همه لینک ها و تصاویر و.. عوض می شه که یا باید ادرس مستقیم بدم که به نظر کار اشتباهی هست حتی با استفاده از وب کانفیگی که دوستان گفتم و بعید می دونم مایکروسافت  این رو پیش بینی نکرده باشه و یا باید از /.. استفاده کنم و چون نمی دونم صفحه در هر لحظه چند تا پارامتر داره نمی دونم چند تا از /.. رو باید پشت هم بزار تا درست بشه
<img alt="" src='../../UserPic/ads/medume/<%#Eval("ImgAds")%>.jpg' >
که اگه http://localhost:49562/T100/ads/fa  باشه درست کار می کنه اما اگه http://localhost:49562/T100/ads/fa/20 باشه یا http://localhost:49562/T100/ads/fa/20/14 باشه درست کار نمی کنه

----------


## m_akbari11

> سلام
> دوستان بار اول که دارم در پروژه از این Url Routing استفاده می کنم. کلی مشکل با URL ها دارم. لطفا راهنمایی بفرمایید.
> من مشکلی با QueryString اینا ندارم همش درست کار می کنه.
> مشکل من اینجاست که یک لینک دارم به این شکل www.YourDomin.ir/Article/1/TestArticle
> حالا توی اون Page چندتا لینک دارم. اون لینکها اینطوری نشون میده www.YourDomin.ir/Article/1/TestArticle/News وقتی علامت ~ هم میزارم به این شکل میشه www.YourDomin.ir/Article/1/TestArticle/~/News
> از tag <a>دارم استفاده می کنم. کل لینک های که داخل سایت هست به همین مشکل خورده. مثلا http://www.YourDomin.ir/Article/1/Te...www.googel.com
> چکار کنم که همه لینک ها درست بشه؟ آخه توی فرم های ورودی طرف می تونه لینک به مطلب بده من که نباید دونه دونه بشینم اونارو اصلاح کنم.
> کل برنامه خوابیده. لطفا کمک کنید.
> 
> ...





> سلام دوستان من هم دقیقا همین مشکل رو دارم
> یعنی وقتی از این روش برای آدرس صفحات استفاده میکنم تو این صفحات ادرس همه لینک ها و تصاویر و.. عوض می شه که یا باید ادرس مستقیم بدم که به نظر کار اشتباهی هست حتی با استفاده از وب کانفیگی که دوستان گفتم و بعید می دونم مایکروسافت  این رو پیش بینی نکرده باشه و یا باید از /.. استفاده کنم و چون نمی دونم صفحه در هر لحظه چند تا پارامتر داره نمی دونم چند تا از /.. رو باید پشت هم بزار تا درست بشه
> <img alt="" src='../../UserPic/ads/medume/<%#Eval("ImgAds")%>.jpg' >
> که اگه http://localhost:49562/T100/ads/fa  باشه درست کار می کنه اما اگه http://localhost:49562/T100/ads/fa/20 باشه یا http://localhost:49562/T100/ads/fa/20/14 باشه درست کار نمی کنه


سلام به همه دوستان . 

دوستان این مشکل با روش زیر حل میشه :  "Page.ResolveUrl" -- "به مثال زیر دقت کنید :" 

 
<img src='<%=Page.ResolveUrl("~/NEC/Allah.png")%>' title='<%=Page.ResolveUrl("~/NEC/Allah.png")%>'  />


 به آدرستون (عکس یا لینکتون ) فقط یک علامت /~ اضافه کنید و به وسیله Page.ResolveUrl (همانند مثال بالا) آن را بخوانید . با این روش تمام لینک ها و تصاویر شما کاملا صحیح نمایش داده خواهد شد . 


اگر سوالی بود در خدمت هستم . 

*یا حق* /

----------


## barzin144

تاپیک قدیمی هست ولی اگه میشه کمک کنید.
تو یه پروژه ساده تست کردم جواب داد دقیقا همون کارهارو تو پروژه اصلیم میکنم این ارور رو میده 
cannot use a leading to exit above the top directory

----------


## kafinetetaha

> این امکان وجود نداره اما میتونی مثل فیس بوک نام کاربری هرکسی رو بزاری پشت آدرس سایت :
> http://www.sitename.com/UserName


 سلام دوست عزیز اگه بخوای نام کاربری قبلش بیاد که یه بحثه 
اگه جور دیگه ای بخوای استفاده کنی باید subdomain استفاده کنی البته اگه هاستی که سایت روش پابلیش شده این امکان داشته باشه

----------


## kafinetetaha

دوستان اگه بخوایم بجای این کار ها اون آدرس رو کد کنیم باید چیکار کنیم مثلا products/{id} رو sdjkdjfsghhgasfdgahas نمایش بدهیم لطفا کمک کنید شاید جای این تایپیک اینجا نباشه ولی بی ربط نیست

----------


## asadi.hasan

> Ø¨Ø§ Ø³ÙØ§Ù Ø¯ÙØ³Øª Ø¹Ø²ÛØ² Ø¨Ø§ Ø§ÛÙ Ø±ÙØ´ ÙÙ Ø­ÙØ§Ø¨ Ø¯Ø§Ø¯ Ù Ø¢Ø¯Ø±Ø³ Ø±Ø§ Ø¨Ù Ø´Ú©Ù Ø²ÛØ± ØªØºÛÛØ± ÙÛ Ø¯ÙØ¯
> http://localhost:3641/NewsShow/27
> Ø¯Ø± ØµÙØ±ØªÛ Ú©Ù Ø¨Ø§ÛØ¯ Ø¨Ù Ø´Ú©Ù Ø²ÛØ± Ø¨Ø§Ø´Ø¯
> http://localhost:3641/Teacher-test/NewsShow/27
> Sequence contains no elements


ÙÚ©Ø± Ú©ÙÙ Ø§Ú¯Ù runat=server Ø¨Ø±Ø§Û ØªÚ¯ a Ø¨Ø²Ø§Ø±ÛØ¯ØÙØ´Ú©Ù Ø­Ù Ø¨Ø´Ù.

----------


## elahe471

> Ø³ÙØ§Ù Ø¨Ù ÙÙÚ¯ÛØ
> ÙØ±Ø³Û Ø§Ø² ÙÙØ§ÙÙ Ø¬Ø§ÙØ¨ØªÙÙ Ø±Ø§Ø¬Ø¹ Ø¨Ù RoutingØ ÛÙ Ø³Ø¦ÙØ§Ù Ø¯Ø§Ø´ØªÙ
> Ø§Ú¯Ù Ø¨Ø®ÙØ§ÙÛÙ Ø¨Ù Ø¬Ø§Û Ø§ÙØ²ÙØ¯Ù ÙÙØ¯Ø§Ø± Route Ø´Ø¯Ù Ø¢ÙØ±Ø§ Ø¨Ù Ø§Ø¨ØªØ¯Ø§Û Ø¢Ø¯Ø±Ø³ ÙØ¨ Ø³Ø§ÛØª (ÙØ§ÙÙØ¯ Yourname.sitename.com) Ø§Ø¶Ø§ÙÙ Ú©ÙÛÙ ÚÚ©Ø§Ø± Ø¨Ø§ÛØ³ÛÛ Ø§ÙØ¬Ø§Ù Ø¨Ø¯ÛÙ
> ÙÙ Ø¯Ø³ØªØ±Ø³Û Ú©Ø§ÙÙ Ø¨Ù Ø§ÙÚ©Ø§ÙØ§Øª ÙØ§Ø³Øª Ù¾ÙÙÙ Ø¯Ø§Ø±Ù Ø§ÙØ§ Ip Ø§Ø®ØªØµØ§ØµÛ ÙØ¯Ø§Ø±Ù Ø¢ÛØ§ Ø¨Ø¯ÙÙ Ø¯Ø§Ø´ØªÙ Ip Ø§Ø®ØªØµØ§ØµÛ ÙÛ ØªÙØ§Ù Ø§ÛÙÚ©Ø§Ø± Ø±Ù Ø§ÙØ¬Ø§Ù Ø¯Ø§Ø¯Ø ØªÙ ÛÚ©Û Ø§Ø² ØªØ§Ù¾ÛÚ© ÙØ§ Ø¨Ø­Ø« Ø´Ø¯Ù Ø¨ÙØ¯ Ø§ÙØ§ ÙØ´Ú©Ù ÙÙ Ø§ÛÙÙ Ú©Ù ÙØ± Ø¨Ø§Ø± Ú©Ø§Ø±Ø¨Ø± Ø¨Ø®ÙØ§Ø¯ ÛÙ Ø§Ø³ÙÛ Ø¨Ù Ø§ÙÙ Ø¢Ø¯Ø±Ø³ Ø§Ø¶Ø§ÙÙ Ú©ÙÙ ÙØ¨ Ø³Ø§ÛØª ÙÙ Ø¨Ø§ÙØ§ ÙÙÛ ÛØ§Ø¯ Ù Ø¨Ù Ø¢Ø¯Ø±Ø³ Ø³Ø±ÙØ± ÙØ±Ø§Ø¬Ø¹Ù ÙÛ Ú©ÙÙ



Ø³ÙØ§Ù ÙÙ ÙÙ ÙØ¨ÙØ§ Ø¨Ù Ø§ÛØ¬Ø§Ø¯ Subdomain  Ø¯Ø§ÛÙØ§ÙÛÚ© ÙÛØ§Ø² Ø¯Ø§Ø´ØªÙ Ø ÙÚ©Ø± ÙÚ©ÙÙ Ø¨Ø§ Route Ø¨ØªÙÙÛØ¯ Ø§ÛÙÚ©Ø§Ø± Ø±Ù Ø§ÙØ¬Ø§Ù Ø¨Ø¯ÛÙ ÙÙÛ ÛÙ Ø±Ø§ÙÛ Ú©Ù Ø®ÙØ¯ÙÙ Ø§Ø²Ø´ Ø§Ø³ØªÙØ§Ø¯Ù Ú©Ø±Ø¯Ù Ù Ø¨Ù Ø¯Ø±Ø³ØªÛ Ú©Ø§Ø± ÙÛÚ©ÙÙ Ø ( Ø§ÛÙØ¬Ø§ ) Ú©Ø§ÙÙØ§ ØªÙØ¶ÛØ­ Ø¯Ø§Ø¯Ù Ø´Ø¯Ù

----------


## mehr_83

Ø¨Ø§ Ø³ÙØ§Ù
Ø§Ú¯Ø± Ø¢Ø¯Ø±Ø³ ØµÙØ­Ù Ø¨ØµÙØ±Øª
newpage.aspx?num=10&mod=20
Ø¨Ø§Ø´Ù. Ø§ÙÙ ÙÙÙØ¹ ÚÙ ØªØºÛÛØ±Ø§ØªÛ Ø¨Ø§ÛØ¯ Ø¯Ø± Ú©Ø¯ÙØ§ Ø¨Ø¯ÛÙØ

----------


## hamid_shrk

> Ø¨Ø§ Ø³ÙØ§Ù
> Ø§Ú¯Ø± Ø¢Ø¯Ø±Ø³ ØµÙØ­Ù Ø¨ØµÙØ±Øª
> newpage.aspx?num=10&mod=20
> Ø¨Ø§Ø´Ù. Ø§ÙÙ ÙÙÙØ¹ ÚÙ ØªØºÛÛØ±Ø§ØªÛ Ø¨Ø§ÛØ¯ Ø¯Ø± Ú©Ø¯ÙØ§ Ø¨Ø¯ÛÙØ


ÙÚ©Ø± ÙÛÚ©ÙÙ Ø§ÛÙ ÙÙØ±Ø¯ Ø±Ù ÙÙ Ú©Ø§ÙÙ ØªÙØ¶ÛØ­ Ø¯Ø§Ø¯Ù Ø¨Ø§Ø´ÙØ ÙØ± Ú©Ø¯Ø§Ù Ø§Ø² Ù¾Ø§Ø±Ø§ÙØªØ± ÙØ§ Ø±Ø§ Ø¨ÛÙ /parameter/ ÙØ±Ø§Ø± Ø¯ÙÛØ¯:


newpage/10/20

----------


## imanasp

ÙÙ ÛÚ© ØµÙØ­Ù category  Ø¯Ø§Ø±Ù Ú©Ù id Ø±Ù Ø¨Ù Ø§Ø³Ù value Ø±Ù Ø±ÙØ² Ø¯Ø§Ø± ÙÛ Ú©ÙÙ Ù  Ø¨Ù ØµÙØ­Ù categoryList ÙÛ ÙØ±Ø³ØªÙ Ú©Ù ØªÙ Ø±ÙÛØ¯Ø§Ø¯ load Ø§Ø´ ÙÙØ´ØªÙ:
  byte[] arrData = Convert.FromBase64String(Request.QueryString["value"]);
        id = System.Text.Encoding.ASCII.GetString(arrData);
       string query = Page.RouteData.Values[id] as string;
Ø§ÙØ§ ÙÚ©ØªÙ Ø¬Ø§ÙØ¨ Ø§ÛÙÙ Ú©Ù ÙØªØºÛØ± query  Ø±Ù null ÙÛØ¯Ù
Ø§ÛÙ Ú©Ø¯ Ø±Ù ÙÙ ØªÙÛ global Ú¯Ø°Ø§Ø´ØªÙ:
  routes.MapPageRoute(
                    "Category-show", "Category-list/{value}", "~/CategoryList.aspx"

----------


## barbodsoft.com

Ø¢ÙØ§ ÙÙ Ú¯ÛØ­ Ø´Ø¯Ù
ÙØ± ÚÛ Ø³Ø¹Û Ú©Ø±Ø¯Ù Ø§Ø² Ú©Ø¯ÙØ§Û Ø´ÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÙ ÙØ´Ø¯. ÙÛÚÛ ÙÙÙÙÛØ¯Ù
ÙÙ ÙÛ Ø®ÙØ§Ù ÛÚ© ØµÙØ­Ù Ø¨Ù ØµÙØ±Øª Ø¯Ø§ÛÙØ§ÙÛÚ©(ØªÙ Ø¯ÛØªØ§Ø¨ÛØ³) Ø¨Ø³Ø§Ø²Ù Ù Ø¢Ø¯Ø±Ø³Ø´ Ø±Ù Ø§Ø² Ø±ÙØ´ ruoting Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÙ Ù ÙÙØ§ÛØ´ Ø¨Ø¯Ù. Ø§Ú¯Ù ÙÛ Ø´Ù Ø¨Ø§ ÙØ«Ø§Ù ØªÙØ¶ÛØ­ Ø¨Ø¯ÛØ¯ ÙÙÙÙÙ ÙÛ Ø´Ù. 
Ø¯Ø± Ø¶ÙÙ Ø§Ú¯Ù Ø¨Ø§ vb.net Ø¨Ø§Ø´Ù Ú©Ù Ø¹Ø§ÙÛ ÙÛ Ø´Ù.

----------


## mehr_83

Ø¯Ø± Ø§ÛÙ Ø±ÙØ´ ÚØ·ÙØ± ÙÛØªÙØ§Ù .html Ø±Ø§ Ø¨Ù Ø§ÙØªÙØ§Û url Ø§Ø¶Ø§ÙÙ Ú©Ø±Ø¯Ø

----------


## omid7240

Ø¨Ø§ Ø³ÙØ§Ù ØªÙ Ø§ÛÙ Ø±ÙØ´ ÚØ·ÙØ±Û ÙÛØ´Ù 
www.mydomain.com/Users/index.aspx
Ø±Ø§ Ø¨Ù 
www.mydomain.com
ØªØ¨Ø¯ÛÙ Ú©Ø±Ø¯ Ø®ÛÙÛ ÙÙÙÙÙ ÙÛØ´Ù Ø±Ø§ÙÙÙØ§ÛÛÙ Ú©ÙÛØ¯
Ø®ÛÙÛ Ø§Ø¶Ø·Ø±Ø§Ø±ÛÙ Ø¨Ø§ØªØ´Ú©Ø±

----------


## mehr_83

ÙÙÛ Ø§ÛÙ Ø±ÙØ´ Ø¨Ø§ ÙÙØ§ÛØ´ Ø¹Ú©Ø³ ÙØ§ ÙØ´Ú©Ù Ø¯Ø§Ø±Ù. ÙØ³ÛØ± Ø¹Ú©Ø³ ÙØ§ Ø¹ÙØ¶ ÙÛØ´Ù Ù ÙÙØ§ÛØ´ Ø¯Ø§Ø¯Ù ÙÙÛØ´Ù. ÚÚ©Ø§Ø± Ø¨Ø§ÛØ¯ Ú©Ø±Ø¯Ø

----------


## azam2005

Ø±Ø§ÙÛ ÙØ³Øª Ú©Ù Ø³Ù ÙÛÙÚ© Ø¨Ù ØµÙØ±Øª Ø²ÛØ± Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÛÙ 
products/title
 products/title/2
products/title/3/4
  ÙÙ Ú©Ø¯ Ø²ÛØ± Ø±Ø§ ÙÙØ´ØªÙ ÙÙÛ Ø§ÛØ±Ø§Ø¯ ÙÛ Ú¯ÛØ±Ù

  routes.MapPageRoute("products", "products/{*title}/{*categorynum}/{*pagenum}", "~/Products.aspx")

----------


## azam2005

Ø§Ú¯Ø± Ø¨Ø®ÙØ§ÙÛÙ Ø§ÛÙ Ø¢Ø¯Ø±Ø³ Ø±Ø§ Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÛÙ ÚÚ©Ø§Ø± Ú©ÙÛÙØØØØ
www.sitename.com/Ú©ØªØ§Ø¨
Ú©Ù Ú©ÙÙÙ Ú©ØªØ§Ø¨ ÙØªØºÛÛØ± Ø§Ø³Øª

----------


## azam2005

ÙÛÙÚ© Ø²ÛØ± Ø¨Ù  ØµÙØ­Ù FTB.aspx ÙÛ Ø±ÙØ¯ ÙÙÛ ÙÙØ¯Ø§Ø± ID Ø±Ø§ Ø¨Ù Ø¬Ø§Û 1 Ø null ÙÛ Ø¯ÙØ¯.Ø§Ø´ØªØ¨Ø§ÙÙ Ú©Ø¬Ø§Ø³ØªØØØØØØ
routes.MapPageRoute("About-Us", "About-Us", "~/FTB.aspx?ID=1")

----------


## rootail

Ø³ÙØ§Ù Ø¯ÙØ³ØªØ§Ù ÙÙ Ø¨Ø§ Ø±ÙØªÛÙÚ¯ ÛÙ ÙØ´Ú©ÙÛ Ø¯Ø§Ø±Ù ÙØ§ ÛÙ Ø§Ø¯Ø±Ø³ Ø¯Ø§Ø±ÛÙ Ø¨Ù Ú¯ÙÙÙ Û Ø²ÛØ±:
 ØªØ±Ø¯ÙÛÙ/site/group/b12Ø¨Ù Ø§ÛÙ Ø¯ÙÛÙ Ú©Ù ÙÙ Ø§Ø·ÙØ§Ø¹Ø§ØªÙ Ø±Ù Ø¨Ø§ b12  Ø³Ø±Ú Ù ÙØ§Ú©Ø´Û ÙÛ Ú©ÙÙ Ø Ù Ø¯Ø± ÙØ§ÙØ¹ Ø¨Ø§ ÙÛÙØ¯ Ø³ÙÙ Ú©Ù "ØªØ±Ø¯ÙÛÙ " Ø¨Ø§Ø´Ù Ú©Ø§Ø±Û ÙØ¯Ø§Ø±Ù Ø Ø§Ú¯Ø± Ú©Ø§Ø±Ø¨Ø± "ØªØ±Ø¯ÙÛÙ" Ø±Ù Ø¨Ù "ØªØ±Ø¯Ù" ØªØºÛÛØ± Ø¨Ø¯Ù Ø¨Ø§Ø² ÙÙ ØµÙØ­Ù Û ÙÙØ±Ø¯ ÙØ¸Ø± Ø¨Ø§Ø² ÙÛØ´Ù Ø§ÙØ§ ØªÙÛ Ø¢Ø¯Ø±Ø³ Ø¨Ø§Ø± ÙÛ ÙÙÛØ³Ù :   ØªØ±Ø¯Ù/site/group/b12
ÙÙÛ ÙÙ ÙÛ Ø®ÙØ§Ù Ø¶ÙÙ Ø§ÛÙÚ©Ù ØµÙØ­Ù Û ÙÙØ±Ø¯ ÙØ¸Ø± Ø¨Ø§Ø² Ø¨Ø´Ù ØªÙÛ Ø§Ø¯Ø±Ø³ Ø¨Ø§Ø± Ø§Ø³Ù Ø±Ù ÙÙ Ø§Ø·ÙØ§Ø­ Ú©ÙÙ Ù ÙØ¬Ø¯Ø¯Ø§  ØªØ±Ø¯ÙÛÙ/site/group/b12 Ø±Ù Ø¨Ø±Ø§Ù ÙÙØ§ÛØ´ Ø¨Ø¯Ù.


Ø±Ø§ÙÙÙØ§ÛÛ Ú©ÙÛØ¯ ÙÙÙÙÙ ÙÛØ´Ù. :Ø§ÙØ³Ø±Ø¯Ù:  :Ø§ÙØ³Ø±Ø¯Ù:

----------


## majid.mp

Ø¨Ø§ Ø³ÙØ§Ù
Ø¯ÙØ³ØªØ§Ù ÚÚ¯ÙÙÙ ÙÛØªÙØ§Ù ÙØ§Ù Ø§ØµÙÛ ØµÙØ­Ù Ø±Ø§ Ø¯Ø± Ø±ÙØªÛÙÚ¯ Ø¨Ø¯Ø³Øª Ø¢ÙØ±Ø¯ Ø¨Ø±Ø§Û ÙØ«Ø§Ù Ø¢Ø¯Ø±Ø³ Ø±ÙØª Ø´Ø¯Ù : www.mydomain.com/test ÙÛØ¨Ø§Ø´Ø¯ Ø­Ø§Ù ÙÙ ÙØµØ¯ Ø¯Ø§Ø±Ù ÙØ§Ù ØµÙØ­Ù test Ø±Ø§ Ø¨Ø¯Ø³Øª Ø¢ÙØ±ÙØ

----------


## mhq1368

Ø¨Ø§ Ø³ÙØ§Ù Ø®Ø¯ÙØª Ø¯ÙØ³ØªØ§Ù 


ÙÛØ®ÙØ§Ø³ØªÙ Ø¨Ø¯ÙÙÙ ÚØ·ÙØ± ÙÛØ´Ù ÚÙØ¯ Ù¾Ø§Ø±Ø§ÙØªØ± Ø±Ù Ø¨Ø§ url routing ÙØ±Ø³ØªØ§Ø¯.

Ø¨Ø§ ØªØ´Ú©Ø±

----------


## Hossein Bazyan

> Ø¨Ø§ Ø³ÙØ§Ù Ø®Ø¯ÙØª Ø¯ÙØ³ØªØ§Ù 
> 
> 
> ÙÛØ®ÙØ§Ø³ØªÙ Ø¨Ø¯ÙÙÙ ÚØ·ÙØ± ÙÛØ´Ù ÚÙØ¯ Ù¾Ø§Ø±Ø§ÙØªØ± Ø±Ù Ø¨Ø§ url routing ÙØ±Ø³ØªØ§Ø¯.
> 
> Ø¨Ø§ ØªØ´Ú©Ø±



            RouteTable.Routes.MapPageRoute("details", "details/{CatNaam}/{SubCatNaam}/{id}", "~/winkel/show_artikels.aspx", True, New RouteValueDictionary(New With {.CatNaam = "", .SubCatNaam = "", .id = ""}))

----------


## mhq1368

> RouteTable.Routes.MapPageRoute("details", "details/{CatNaam}/{SubCatNaam}/{id}", "~/winkel/show_artikels.aspx", True, New RouteValueDictionary(New With {.CatNaam = "", .SubCatNaam = "", .id = ""}))


Ø³ÙØ§Ù
ÙÙÛ new with Ø¨Ø±Ø§Û ÙÙ Ø®Ø·Ø§ ÙÛÚ¯ÛØ±Ù

Ø¯Ø± Ø¶ÙÙ ÙÙ ÚØ·ÙØ± Ù¾Ø§Ø±Ø§ÙØªØ± ÙØ§ Ø±Ù Ø¯Ø± ØµÙØ­Ù ÙÙØ±Ø¯ ÙØ¸Ø± show_artikels.aspx Ø¨Ú¯ÛØ±Ù.(Ø§ÙØ¨ØªÙ ØªÙ aspx ÙÙ code behind)

----------


## Hossein Bazyan

Ø§ÛÙ Ú©Ø¯ Ø¨Ø§ ÙÛ Ø¨Û ÙÙØ´ØªÙ Ø´Ø¯Ù Ù Ø§Ú¯Ù Ø¨Ø®ÙØ§Û Ø¨Ø§ Ø³Û Ø¨ÙÙÛØ³Û Ø¨Ø§Ø¯Û ØªØºÛÛØ±Ø´ Ø¨Ø¯Û.
Ø´ÙØ§ ÚØ±Ø§ ÙÛØ®ÙØ§Û Ù¾Ø§Ø±Ø§ÙØªØ±ÙØ§ Ø¯Ø± Ø¯Ø± ØµÙØ­Ù ASPX Ø¨Ú¯ÛØ±ÛØ
Ø§ÙØ¨ØªÙ Ø§ÛÙÚ©Ø§Ø± ÙÙ ÙÛØ´Ù Ø´ÙØ§ ÛÙ ÙØªØºÛÛØ± Ø¹ÙÙÙÛ Public ÙØ¹Ø±ÛÙ Ú©Ù Ù Ø¯Ø± ÙØ±Ù ÙÙØ¯ Ø¨Ø§ Ù¾Ø§Ø±Ø§ÙØªØ±ÙØ§Øª Ù¾Ø±Ø´ Ú©Ù Ù Ø¯Ø± ÙØ§ÛÙ .aspx Ø§Ø²Ø´ Ø§Ø³ØªÙØ§Ø¯Ù Ú©Ù

----------


## Hossein Bazyan

Ø§ÛÙÙ Ø´ÛÙÙ Ø¯Ø±ÛØ§ÙØª Ù¾Ø§Ø±Ø§ÙØªØ±ÙØ§ :


 Dim category As String = Trim(Page.RouteData.Values("CatNaam"))
        Dim Subcategory As String = Trim(Page.RouteData.Values("SubCatNaam"))
        Dim MainId As String = Trim(Page.RouteData.Values("id"))

----------


## sadegh.te

Ø³ÙØ§Ù ÙÙÙ ÛÙ Ø³ÙØ§Ù Ø¯Ø§Ø±Ù ÙÙÙ ÚÛØ² Ø¯Ø±Ø³Øª Ú©Ø§Ø± ÙÛÚ©ÙÙ ÙÙØ· ÙÙØªÛ Ø³Ø§ÛØª Ø±Ù Ø§Ø¬Ø±Ø§ ÙÛÚ©ÙÙ ØµÙØ­Ù Ø§ÙÙØ´ .aspx Ø±Ù Ø¯Ø§Ø±Ù ÙÙÛ Ø¯Ø± Ø§Ø¯Ø§ÙØ´ ÙÙÙ ÚÛØ² Ø¯Ø±Ø³Øª Ú©Ø§Ø± ÙÛÚ©ÙÙ Ø§Ú¯Ù ÙÛØ´Ù Ø±Ø§ÙÙÙØ§ÛÛ Ú©ÙÛØ¯ Ú©Ù ÚØ·ÙØ± Ù¾Ø³ÙÙØ¯ ØµÙØ­Ù

 Ø§ÙÙ Ø±Ù Ù¾Ø§Ú© Ú©ÙÙ ÙÙÙÙÙ Ø

----------


## Hossein Bazyan

> Ø³ÙØ§Ù ÙÙÙ ÛÙ Ø³ÙØ§Ù Ø¯Ø§Ø±Ù ÙÙÙ ÚÛØ² Ø¯Ø±Ø³Øª Ú©Ø§Ø± ÙÛÚ©ÙÙ ÙÙØ· ÙÙØªÛ Ø³Ø§ÛØª Ø±Ù Ø§Ø¬Ø±Ø§ ÙÛÚ©ÙÙ ØµÙØ­Ù Ø§ÙÙØ´ .aspx Ø±Ù Ø¯Ø§Ø±Ù ÙÙÛ Ø¯Ø± Ø§Ø¯Ø§ÙØ´ ÙÙÙ ÚÛØ² Ø¯Ø±Ø³Øª Ú©Ø§Ø± ÙÛÚ©ÙÙ Ø§Ú¯Ù ÙÛØ´Ù Ø±Ø§ÙÙÙØ§ÛÛ Ú©ÙÛØ¯ Ú©Ù ÚØ·ÙØ± Ù¾Ø³ÙÙØ¯ ØµÙØ­Ù
> 
>  Ø§ÙÙ Ø±Ù Ù¾Ø§Ú© Ú©ÙÙ ÙÙÙÙÙ Ø


Ø³ÙØ§Ù

Ø´ÙØ§ Ø¨Ø±Ø§Û ØµÙØ­Ù Ø§ÙÙØª Ø­ØªÙØ§ ÙÛÚ ØªØ¹Ø±ÛÙÛ ØªÙ Ú¯ÙÙØ¨Ø§Ù ÙÚ©Ø±Ø¯Û 

Ø§ÛÙÙ Ø¨Ù Ú¯ÙÙØ¨Ø§ÙØª Ø§Ø¶Ø§ÙÙ Ú©Ù 


RouteTable.Routes.MapPageRoute("Home", "home", "~/default.aspx", True)

----------


## sadegh.te

ÙÙØªÛ True Ø±Ù Ø¨ÙØ´ Ø§Ø¶Ø§ÙÙ ÙÛÚ©ÙÙ eror ÙÛÚ¯ÛØ±Ù Ø¯ÙÛÙØ´ ÚÛÙØ

ÙÛÚ¯Ù Ù¾Ø§Ø±Ø§ÙØªØ± True ÙØ¬ÙØ¯ ÙØ¯Ø§Ø±Ø¯.

----------


## neda555

Ø³ÙØ§Ù Ø¨Ø±Ø§Û Ø§ÛÙ Ø³Ù ÙÙÙÙÙ Ø¢Ø¯Ø±Ø³ Ø²ÛØ± Ø¨Ù ÚÙ ØµÙØ±ØªÛ Ø¨Ø§ÛØ¯ urlrouting Ø§ÙØ¬Ø§Ù Ø¯Ø§Ø¯Ø 
1.
  Member member = (Member)Session["Member"];               
 int id = Convert.ToInt32(member.ID.ToString());
                prof.HRef = "../Admin/Profile.aspx?id=" + id;
2.
 <a href="../Admin/member.aspx" id="showinfomem" runat="server" visible="false">ÙØ´Ø§ÙØ¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª</a

3.
<a href="../../Admin/InfoDepartment/travel.aspx">ÙØ³Ø§ÙØ±Øª ÙØ§</a>

ÙØ¹ÙØ§ Ø¯Ø§Ø±Ù Ø±Ù ÙÙÚ©Ø§Ù ØªØ³Øª ÙÛÚ¯Ø±Ù ÙØ·ÙØ§ Ø±Ø§ÙÙÙØ§ÛÛ Ú©ÙÛØ¯
 ÚÛØ²Û Ú©Ù ÙÙØ´ØªÙ:
1.
  route.MapPageRoute("Prfile", "Profile/{id}", "~/Admin/Profile.aspx");
Ø¯Ø± ØµÙØ­Ù profile :

   int id =Convert.ToInt32 (Page.RouteData.Values["id"].ToString());                DLInfo.DataSource = DAL.MemberDAL.SelectUserByID(id);
                DLInfo.DataBind();
Ø§Ø±ÙØ± ÙÛØ¯Ù Ú©Ù id  Ø³Øª ÙÙÛØ´Ù null ÙØ³ØªØ´
2.  route.MapPageRoute("member", "member", "~/Admin/member.aspx");
Ø§ØµÙØ§ Ø¢Ø¯Ø±Ø³ ØªØºÛÛØ± ÙÙÛÚ©ÙÙ :http://localhost:1065/Admin/member.aspx

3.route.MapPageRoute("travel", "travel", "~/Admin/InfoDepartment/travel.aspx");
ØªØºÛÛØ± ÙÙÛÚ©ÙÙ Ø¢Ø¯Ø±Ø³ !!! ÙÙÛ http://localhost:1065/travel Ø±Ù ÙÙ Ú©Ù ÙÛØ²ÙÙ Ø¬ÙØ§Ø¨ ÙÛØ¯Ù!

----------


## Hossein Bazyan

> ÙÙØªÛ True Ø±Ù Ø¨ÙØ´ Ø§Ø¶Ø§ÙÙ ÙÛÚ©ÙÙ eror ÙÛÚ¯ÛØ±Ù Ø¯ÙÛÙØ´ ÚÛÙØ
> 
> ÙÛÚ¯Ù Ù¾Ø§Ø±Ø§ÙØªØ± True ÙØ¬ÙØ¯ ÙØ¯Ø§Ø±Ø¯.



ÙÙ Ø¨Ø±Ø§Û ÙÙ Ú©Ù Ø¨Ø§ ÙÛ Ø¨Û Ú©Ø§Ø± ÙÛÚ©ÙÙ Ù Ø§ÛØ±ÙØ± ÙÙÛØ¯Ù Ø´Ø§ÛØ¯ Ø¨Ø§ Ø³Û Ù¾ÛØºØ§Ù Ø§ÛØ±ÙØ± Ø¨Ø¯Ù. Ø­Ø°ÙØ´ ÙÙ Ú©ÙÛ ÚÛØ²Û ÙÙÛØ´Ù .

----------


## sadegh.te

Ø­Ø§ÙØ§ ÛÙ Ø±Ø§Ù Ø­Ù Ø¨Ø¯ÛÙ Ú©Ù ÙÙ Ø§ÛÙÙ ÚÛÚ©Ø§Ø±Ø´ Ú©ÙÙ.ØØ

----------


## Hossein Bazyan

> Ø­Ø§ÙØ§ ÛÙ Ø±Ø§Ù Ø­Ù Ø¨Ø¯ÛÙ Ú©Ù ÙÙ Ø§ÛÙÙ ÚÛÚ©Ø§Ø±Ø´ Ú©ÙÙ.ØØ


Ø¯ÙØ³Øª Ø¹Ø²ÛØ² Ø Ø´ÙØ§ ÙÚ¯ÙØªÛØ¯ Ú©Ù Ø§Ø² ÚÙ Ø²Ø¨ÙÙÛ Ø§Ø³ØªÙØ§Ø¯Ù ÙÛÚ©ÙÛØ¯. ÙÙ Ø¨Ø§ ÙÛ Ø¨Û Ø¯Ø± ÙÙÙ Ù¾Ø±ÙÚÙ ÙØ§Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙÛÚ©ÙÙ Ù ÙØ´Ú©ÙÛ ÙÙ Ù¾ÛØ´ ÙÛÙÙØ¯Ù . Ø§ÙØ¨ØªÙ ÙÙ Ø¨Ø§ ÙÛ Ø¨Û Ú©Ø§Ø± ÙÛÚ©ÙÙ

----------


## sadegh.te

> Ø¯ÙØ³Øª Ø¹Ø²ÛØ² Ø Ø´ÙØ§ ÙÚ¯ÙØªÛØ¯ Ú©Ù Ø§Ø² ÚÙ Ø²Ø¨ÙÙÛ Ø§Ø³ØªÙØ§Ø¯Ù ÙÛÚ©ÙÛØ¯. ÙÙ Ø¨Ø§ ÙÛ Ø¨Û Ø¯Ø± ÙÙÙ Ù¾Ø±ÙÚÙ ÙØ§Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙÛÚ©ÙÙ Ù ÙØ´Ú©ÙÛ ÙÙ Ù¾ÛØ´ ÙÛÙÙØ¯Ù . Ø§ÙØ¨ØªÙ ÙÙ Ø¨Ø§ ÙÛ Ø¨Û Ú©Ø§Ø± ÙÛÚ©ÙÙ


Ø³ÙØ§Ù 
ÙÙ Ø¨Ø§ #C Ú©Ø§Ø± ÙÛÚ©ÙÙ ÚÙ Ø±Ø§Ù Ø­ÙÛ Ù¾ÛØ´ÙÙØ§Ø¯ ÙÛØ¯ÛØ¯Ø

----------


## Hossein Bazyan

> Ø³ÙØ§Ù 
> ÙÙ Ø¨Ø§ #C Ú©Ø§Ø± ÙÛÚ©ÙÙ ÚÙ Ø±Ø§Ù Ø­ÙÛ Ù¾ÛØ´ÙÙØ§Ø¯ ÙÛØ¯ÛØ¯Ø


Ø³ÙØ§Ù


http://msdn.microsoft.com/en-us/libr...v=vs.100).aspx

----------


## neda555

Ø³ÙØ§Ù ÙÙ Ú©Ù ÙØ§Ø¶Ø­ Ù Ø³Ø§Ø¯Ø³Øª ÚØ±Ø§ Ú©Ø³Û Ø¬ÙØ§Ø¨ ÙÙÛØ¯ÙØ!ÙØ·ÙØ§ Ø±Ø§ÙÙÙØ§ÛÛ Ú©ÙÛØ¯

----------


## uthman

Ø§ÛÙ Ù¾Ø±ÙØ²Ù Ø±Ù Ø¯Ø§ÙÙÙØ¯ Ú©Ù Ø´Ø§ÛØ¯ Ø¨Ù Ø¯Ø±Ø¯Øª Ø¨Ø®ÙØ±Ù

----------


## neda555

Ø³ÙØ§Ù
Ø¯Ø± ÙÙ ØµÙØ­Ù Ø±Ù Ø¨Ù Ø§ÛÙ Ø´Ú©Ù ØªØ¹Ø±ÛÙ Ú©Ø±Ø¯Ù
route.MapPageRoute("ImgGallery", "ImgGallery/{id}/{title}", "~/Pages/ClinicImgGallery.aspx");
 Ù id  Ø±Ù Ø¨Ù Ø´Ú©Ù Ø²ÛØ± Ø§Ø² query string ÙÛÚ¯ÛØ±Ù ÙÙÛ Ø§Ø±ÙØ± ÙÛØ¯Ù

int id = int.Parse(Page.RouteData.Values["id"].ToString());

----------


## iamebadi

Ø³ÙØ§Ù Ø¯ÙØ³Øª Ø¹Ø²ÛØ²...
Ø´Ø±ÙÙØ¯Ù Ú©Ù ÙØ²Ø§Ø­Ù Ø´ÙØ§ Ø´Ø¯Ù...
ÙÙ ÛÚ© ÙØ´Ú©Ù Ø¯Ø± routing Ø¨Ø§ Ø§Ø³ØªÙØ§Ø¯Ù Ø§Ø² asp.net friendlyurls Ø¯Ø§Ø±Ù ... ÙØ´Ú©ÙÙ Ø§ÛÙÙ Ú©Ù ÙÙ Ø·Ø¨Ù Ø¯Ø³ØªÙØ± Ø²ÛØ± ÛÚ© Ù¾ÛØ¬ Ø¨Ù ÙØ§Ù showsite.aspx Ø±Ù Routing Ú©Ø±Ø¯Ù Ø¨Ø§ Ø¯Ø³ØªÙØ± Ø²ÛØ± 

 routes.MapPageRoute("Site", "Site/{Site}", "~/showsite.aspx");

Ú©Ù Ø¯Ø±Ø³Øª Ø§ÙØ¬Ø§Ù ÙÛ Ø´Ù ÙØ¢Ø¯Ø±Ø³ ØµÙØ­Ù  (showsite.aspx) Ø¨Ù Ø´Ú©Ù Ø²ÛØ± Ø¯Ø± ÙÛ Ø¢ÛØ¯ Ú©Ù Ø¯Ø±Ø³ØªÙ :
http://localhost:1083/Site/Ù¾ÛØ§ÙÚ©-ØªØ¨Ù...§Ù-Ú©ÙØªØ§Ù

Ø§ÙØ§ ÙØªØ§Ø³ÙØ§ÙÙ Ú©ÙÛÙ ÙÛÙÚ©ÙØ§Û Ø¯ÛÚ¯Ù ØµÙØ­Ù Ú©Ù Ø¯Ø± ÙØ³ØªØ±Ù¾ÛØ¬ ÙØ³Øª Ø¨ÙÙ ÙÛØ±ÛØ²Ù ÙØ«ÙØ§ Ø¢Ø¯Ø±Ø³ ØµÙØ­Ù Ø§ØµÙÛ Ø§Ù Ú©Ù http://localhost:1083/default Ø¨Ø§ÛØ¯ Ø¨Ø§Ø´Ù ÛÚ© Ú©ÙÙÙ Site Ø¨ÙØ´ Ø§Ø¶Ø§ÙÙ ÙÛ Ú©ÙÙ Ù ÙÛØ´Ù http://localhost:1083/Site/default Ú©Ù Ø¹Ø¨Ø§Ø±Øª Site Ø±ÙØªÛÙÚ¯ ØµÙØ­Ù (showsite.aspx) ÙÛ Ø¨Ø§Ø´Ø¯ Ú©Ù Ø¯Ø± ÙØ³ÙØª Ø¨Ø§ÙØ§ ØªÙØ¸ÛÙ Ú©Ø±Ø¯Ù...

Ø®ÙØ§ÙØ´ÙÙØ¯Ù Ø±Ø§ÙÙÙØ§ÛÛ ÙØ±ÙØ§ÛÛØ¯ ... Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¯ÛÚ¯Ù ÙÙ ÙÛØ§Ø² Ø¨ÙØ¯ Ø¨Ú¯ÛØ¯ Ø¨Ø±Ø§ØªÙÙ Ø§Ø±Ø³Ø§Ù Ú©ÙÙ.
Ø¨Ø§ ØªØ´Ú©Ø±

----------


## mehdi.mj

http://www.codeproject.com/Articles/...g-with-ASP-NET

----------


## mehdi.mj

http://www.c-sharpcorner.com/uploadf...n-Asp-Net-4-0/

----------


## sg.programmer

Ø³ÙØ§Ù ØµÙØ­Ù   Global.asax.cs Ø¯Ø± Ø¨Ø±ÙØ§ÙÙ Ø§Ù ÙØ±Ø§Ø± ÙØ¯Ø§Ø±Ø¯ ÚØ·ÙØ±Û Ø¨Ø§ÛØ¯ Ø§Ø¶Ø§ÙÙ Ø§Ø´ Ú©ÙÙØ ÙÙÛ  ØµÙØ­Ù   Global.asax Ø¯Ø± Ø¨Ø±ÙØ§ÙÙ ÙØ±Ø§Ø± Ø¯Ø§Ø±Ø¯ .

----------

