私は自分のURL名を選ぶユーザーのためのカスタマールートを実行したいと思っています。ASP.NET MVCでルートが使用されていることを確認してください
http://example.com/customer-name
は私が名前彼らの入力はすでに我々のルートに登録されていないことを確認することができますか?誰かが「about」と入力した場合、「http://example.com/about」のように、「About」ページがあるため、名前がすでに使用中であることを伝えることができます。
私は自分のURL名を選ぶユーザーのためのカスタマールートを実行したいと思っています。ASP.NET MVCでルートが使用されていることを確認してください
http://example.com/customer-name
は私が名前彼らの入力はすでに我々のルートに登録されていないことを確認することができますか?誰かが「about」と入力した場合、「http://example.com/about」のように、「About」ページがあるため、名前がすでに使用中であることを伝えることができます。
ユーザー定義のルートには貪欲なルートを使用する必要があります。ルートの登録は次のようになります。
routes.MapRoute("customCustomerRoute",
"{*customerName}",
new { controller = "Customer", action = "Home" }
);
、それは他のルートを食べて取得しないように、あなたのルートの最後に行く必要があります。
これで、顧客名のパスをdbに保存し、新しいパスを作成する前にそのパスをルックアップできます。次のコードで可能なすべての既存のルート得ることができます
:次に
var routes = new RouteCollection();
MvcApplication.RegisterRoutes(routes);
をそれらのルートが登録されるURLが含まれている場合、あなたは見ることができました。
私はすべての顧客ルートを「フォルダ」に配置します。 http://example.com/account/customer-name。そこに矛盾はありません。
他のすべての「ハードコードされた」コントローラを領域に配置し、クライアントで使用することを禁止します。
しかし、ルート "/ about"が使用されていないことを確認したい場合、それはDBには存在しません。それはGlobal.asaxにあります。 –
あなたは何を求めているのですか?私のことを見てください。それは役に立ちますか? –
それだけでルートを登録しますか? –