ASP.NET MVCには、有用なメソッドRequest.IsAjaxRequest
があります。これは、AJAXを介して要求が行われたかどうかを判断するために使用できます。しかし、RenderAction
メソッドもAJAXを介してコントローラ/アクションを呼び出すようです。RenderActionのリクエストとAJAXのリクエストを区別するにはどうすればよいですか?
RenderAction
経由のコールはView
を返すのに対し、AJAX経由のコールはJson
オブジェクトを返すようにしたいと思います。私はそれらの2つの情報源からの呼び出しを区別することができますか?
EDIT: Re。ジム:私は単にView
内RenderAction
を呼び出す:SomeView.ascx
で
:
Html.RenderAction("Action", "AnotherController", new { id = "some ID" });
william、私はあなたの声明RenderActionで異なることを願います。同じテストがレンダリングに[Request.IsAjaxRequest()]を適用します。確かにデフォルトではajax経由で呼び出されることはありません。あなたのコードをチェックして、「カバーの下に」レンダリングを呼び出すいくつかのjqueryを持たないようにする必要があります。 –
@jim、更新を参照してください... –