次のエラーが表示されます: System.ArgumentException: パラメーター ディクショナリには、メソッド 'System.Web.Mvc.ActionResult Edit(Int32, System.String, Int32, System.String)' が elmah ログのいたるところにあります。
URL もログに記録し、パラメーター ID が存在します: https://removed.site/removedController/Edit/2973962?eid=000003879145&orgUnitId=26189&page=index&PageSize=100&PageNumber=1&Filter=Active
上記の URL のパラメータ id = 2973962。intを使用するように述べている多くの投稿を見てきましたか? アクション パラメーターの int の代わりに null を渡す場合、これが解決策であることに同意します。しかし、この場合、どうすればよいかわかりません。
また、エラー ログに表示されることを除いて、このエラーは見たことがありません (またはユーザーから苦情がありません)。
編集*
これは、IIS セッションが 20 分間タイムアウトした後に発生していると思います。ユーザーがページに移動し、コンピューターを 20 分以上離れてフォームを送信しようとすると、サーバーはそれらを POST アクションではなく GET に送信します。この方法でエラーを再現できました。
これは正しいですか? セッション状態が失われた後、サーバーは GET にリダイレクトしますか? また、IIS セッションのタイムアウトを 20 分に引き上げることを推奨する人はいますか?