私はHttpModuleを書いています。私はリクエストがMVCアプリケーションにあることを検出する方法を発見しようとしています。HttpModuleでMVCアプリケーションを検出する方法
私はこのようなハンドラのいくつかに夢中になっています。
public void Init(HttpApplication httpApp)
{
httpApp.PreRequestHandlerExecute += PreRequestHandlerExecute;
httpApp.PreSendRequestHeaders += PreSendRequestHeaders;
httpApp.PostRequestHandlerExecute += PostRequestHandlerExecute;
}
My PreRequestHandlerExecuteには、この条件が必要です。
public void PreRequestHandlerExecute(object sender, EventArgs e)
{
if isMvc(HttpContext.Current))
{
doSomethingSpecificToMvc()
}
isMvcは、()(ラメである)MVC要求を検出するために、ファイルの拡張子がないことのみに依存、これを好きに見えます。
private static bool isMvc(HttpContext ctx)
{
bool retVal = false;
if (string.IsNullOrEmpty(VirtualPathUtility.GetExtension(ctx.Request.ServerVariables["PATH_INFO"])))
{
retVal = true;
}
return retVal;
}
リクエストがMVCアプリケーションにあるかどうかを判断するにはどうすればよいでしょうか?
doSomethingSpecificToMvc()の実装は何ですか?私はなぜあなたがこの珍しい区別をしたいのか不思議です... –