ASP.NET MVC で次のカスタム ルート クラスを作成しました。
public class UserAgentConstraint:IRouteConstraint {
private string RequiredUserAgent;
public UserAgentConstraint(string agentParam) {
RequiredUserAgent = agentParam;
}
public bool Match(HttpContextBase httpContext, Route route, string parameterName,
RouteValueDictionary values, RouteDirection routeDirection) {
return httpContext.Request.UserAgent != null && !httpContext.Request.UserAgent.Contains(RequiredUserAgent);
}
}
そして Global.asax.cs で:
public static void RegisterRoutes(RouteCollection routes) {
routes.MapRoute("myRoute2", "{controller}/{action}/{Id}",
new { controller = "home", action = "index", Id = UrlParameter.Optional }, new {
customConstriant=new UserAgentConstraint("IE")
}
}
上記のコードは問題なく動作しますが、ユーザーが IE を使用すると 404 エラーが発生します。カスタムページにリダイレクトしたい。Web.Config
私のエラーは IE でのみ使用されるため、ファイルでカスタム エラーを使用したくありません。どうすればこれを行うことができますか?
アドバイスありがとうございます。