0

私には意味がありません。リンクが作成されたときではなく、ユーザーがリンクをクリックしたときにのみ制約がヒットすると思いました。ここで何か不足していますか?

ページに大量のリンクがある場合、新しいデータ コンテキストを開いてルート リンクごとにクエリを実行すると、パフォーマンスが大幅に低下します。リンクを作成するときに、すべての Html.RouteLink ヘルパー (およびその他) を設定して制約にヒットしないようにする方法はありますか?

どうもありがとう!

4

1 に答える 1

0

少なくとも適切なキャッシュなしでは、ルートの制約をチェックするたびにデータベース呼び出しを行うべきではありません。

また、実際には完全に理にかなっています。

routes.MapRoute("Test1", "test1/{value}", 
    new { controller = "Home", Action = "Index" },
    new { value = "^[0-9]+$" }
);
routes.MapRoute("Test2", "test2/{value}",
    new { controller = "Home", Action = "Index" }
);

生成中に制約をチェックしないとTest1、URL の生成に常にルートが使用されますが、ユーザーがクリックしたときに一致するルートが見つかりません。

于 2012-09-16T02:14:25.177 に答える