PDA

View Full Version : چگونگی انجام URL Rewrite در ای اس پی دات نت



ASPX
پنج شنبه 08 اردیبهشت 1384, 15:38 عصر
چگونه میتوان آدرس یک صفحه را که به صورت
www.sitename/aaa.aspx?id=5
را به
www.sitename/aaa/5.aspx
تبدیل کرد؟

Behrouz_Rad
پنج شنبه 08 اردیبهشت 1384, 18:12 عصر
Dim StrReturn As String = Request.URL.ToString()
Dim i As Int32 = StrReturn.LastIndexOf(".")
If i <> -1 Then
StrReturn = StrReturn.Remove(i, 1)
StrReturn = StrReturn.Insert(i, "/")
StrReturn = StrReturn.Replace("aspx?id=5", "5.aspx")
End If
Response.Write(StrReturn.ToString())

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

ealireza
پنج شنبه 08 اردیبهشت 1384, 18:44 عصر
بهروز جان وقتی که 5.aspx نباشه این کد رو کجا باید نوشت :گیج:

ASPX
پنج شنبه 08 اردیبهشت 1384, 22:38 عصر
مرسی آقای راد :تشویق:

Behrouz_Rad
جمعه 09 اردیبهشت 1384, 05:36 صبح
بهروز جان وقتی که 5.aspx نباشه این کد رو کجا باید نوشت
بنده توضیح دادم که:

ایجاد یک تابع سفارشی برای موارد عام پیشنهاد میشه.

ealireza
یک شنبه 11 اردیبهشت 1384, 18:28 عصر
اگه میشه در مورد این تابع هم یه توضیحی بده و بگو کجای وب کانفیگ باید قرار بگیره


ارادتمند
علیرضا

Behrouz_Rad
یک شنبه 11 اردیبهشت 1384, 19:22 عصر
1) توابع در Web.Config قرار نمی گیرند.
توابع در فرم، ماژول یا کلاس قرار دارند.

2) کدی که دیدید (تابع نیست)، خیلی واضح نوشته شده. نیاز به هیچ توضیح اضافه ای نداره.

ealireza
یک شنبه 11 اردیبهشت 1384, 20:33 عصر
بهروز جان میدونم که تابع نیست (انقدر هم پرت نیستم)

منظور من این بود که مثلا یک تابع باشه که در Web.config معرفی بشه و این کار رو انجام بده بصورت کلی
این کار رو انجام بده ....


همینطوری که نمیشه ....

ealireza
یک شنبه 11 اردیبهشت 1384, 20:56 عصر
من قبلا یه چیزی دیده بودم اما العان اصلا یادم نیست ...

یه چیز مثل این معرفی کرده بود ...
NameSpace.Class.Function

دقیقا همین کار رو میکرد ......
در text. فکر کنم همین کار انجام شده باشه ....

Behrouz_Rad
یک شنبه 11 اردیبهشت 1384, 21:56 عصر
متاسفم.
تا حالا با همچین موردی برخورد نداشتم.
تعاریف عمومی: ماژول در VB.NET و کلاس در C#.NET

kochol
دوشنبه 12 اردیبهشت 1384, 08:34 صبح
سلام

ببین مثلا من یک ماژول ساختم که ویزیت صفجه رو حساب کنه


Public Class pagevisits
Public Sub visit(ByVal page As String)
Dim con1 As New SqlClient.SqlConnection
con1.ConnectionString = System.Configuration.ConfigurationSettings.AppSett ings.GetValues("connectionstring").GetValue(0)
Dim cmd1 As New SqlClient.SqlCommand
cmd1.Connection = con1
cmd1.CommandText = "update pages set visits=visits + 1 where (name='all' or name='" & page & "')"
con1.Open()
cmd1.ExecuteNonQuery()
con1.Close()
End Sub
End Class

که در صفحه های دیگه به راحتی از این کد استفاده می کنم البته من فقط خواستم برات یه مثال بزنم


If Me.IsPostBack = False Then
Dim visit As New pagevisits
visit.visit("index2")
End If

Behrouz_Rad
دوشنبه 12 اردیبهشت 1384, 09:20 صبح
اضافه کردن یک Key و مقدار اون به فایل Web.Config، با تعریف یک تابع، متد یا پروسیجر در این فایل ارتباطی پیدا نمی کنه.