次のルートを受け入れたい場合があります
'/type/view/23' or '/type/view/hats'
ここで、23は帽子のIDです。
コントローラは次のようになります。
public class TypeController
{
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult View(int id)
{
...
}
}
今、彼らが23を通過した場合、問題はありません。彼らが帽子をかぶったら、私にはやるべきことがいくつかあります。この場合、IDとして渡された値がintであるか(データベースに存在するかどうかを確認する)、または文字列であるかどうかを確認するActionFilterを使用して、帽子を23に変換するのでしょうか。渡された文字列のIDが何であるかをデータベースで確認します。どちらの場合でも、一致するものが見つからない場合は、ユーザーを別のアクションにリダイレクトします。
第一に、私が正しいと名付けたアプローチです。第二に、ActionFilter内からリダイレクトを行うことが可能です。
乾杯アンソニー