私のASP.NET MVCウェブサイトのSEOフレンドリーなURLを実装したいと思います。Asp.net MVC SEOフレンドリーなURL
現在、私は次のようにURLを持っている:
http://www.domain.com/product?id=productid
が、今私のような私のURLを書き換えたい:だから誰が上で私を助けることができますしてください
http://www.domain.com/productname
...
私のASP.NET MVCウェブサイトのSEOフレンドリーなURLを実装したいと思います。Asp.net MVC SEOフレンドリーなURL
現在、私は次のようにURLを持っている:
http://www.domain.com/product?id=productid
が、今私のような私のURLを書き換えたい:だから誰が上で私を助けることができますしてください
http://www.domain.com/productname
...
以下の解決策を試してください。
public ActionResult index(string productName)
{
//do something regarding get product by productname
}
このようにしてMVCルーティングエンジンにルートを追加できます -
これはあなたがたりないかもしれないwww.domain.com/productname
を達成することができるかもしれ理由は、その商品名ISN」です
www.domain.com/productid/productname
のようなURLを持つことができるようになりますGlobal.asax.cs
routes.MapRoute(
"Product",
"{controller}/{productId}/{productName}",
new { controller = "Product", action = "Index" },
new { productId = UrlParameter.Optional , productName = UrlParameter.Optional }
);
で
識別子を使用し、レコードを一意に検索するために使用することはできません。あなたはURLに識別子が必要です。
例 - この質問のURLを見て、それはIDを持っていて、SEOに優しいテストを追加します。
http://www.deliveron.com/blog/post/SEO-Friendly-Routes-with-ASPnet-MVC.aspx –
これを処理するために、Global.asaxの中に新しいルートを作成します。
routes.MapRoute(
"productId", // Route name
"productId/{id}/{name}", // URL with parameters
new { controller = "Home", action = "productId", id = 1234, name = widget } // Parameter defaults
);
Asp.Net MVCは、内蔵ルーティング、そうのURLリライタの必要はありませんがあります。
詳細here
これは初心者のための最高の一品です - > SEO Friendly URls
記事も空白とダッシュを削除する方法を説明します。
ます。http://ofps.oreilly
global.asax.cs
しかし、あなたで
productName
で一意を維持し、(すなわち、製品・コントローラー製品のコントローラのindexアクションでそのことでレコードを取得するために必要。 co.jp/titles/9781449320317/ch_Routing.html –