比方說我有這樣的SQL Server表:Asp.net路由網址轉換?
id Name Band
--------------------
1 John Beatles
2 Paul Beatles
3 George Beatles
4 Ringo Beatles
5 Jim Doors
我想有一個人詳細信息頁面,如:
http://localhost/Music/Beatles/Paul
,我想對待是:
http://localhost/Details.aspx?id=2
所以,我正在寫這個代碼來註冊一個簡單的路線:
void Application_Start(object sender, EventArgs e)
{
RouteTable.Routes.MapPageRoute("MyRoute", "Music/{Band}/{Name}", "~/Details.aspx");
}
但我不明白:
當Asp.net得到http://localhost/Music/Beatles/Paul
,如何沒有他知道知道,保羅的價值是2
?
你是否告訴我,每當asp.net遇到Paul
他應該去DB和掃描預定義的唯一列(在這種情況下爲Name
),並得到它的列ID
值?
或者我應該注入保羅的值到URL,像這樣做:
http://stackoverflow.com/questions/13938994/jquery-conditional-validation-based-on-select-text
^
|
---------------------------------------
這將是我的情況:
http://localhost/Music/Beatles/2/Paul
你應該看看AttributeRouting的代碼示例。 https://github.com/mccalltd/AttributeRouting –