RedirectToAction()を使用して文字列パラメータを渡す方法を知りたいと思います。ASP.Net MVC:RedirectToAction()を使用してアクションに文字列パラメータを渡す
のは、私はこのルートがあるとしましょう:
routes.MapRoute(
"MyRoute",
"SomeController/SomeAction/{id}/{MyString}",
new { controller = "SomeController", action = "SomeAction", id = 0, MyString = UrlParameter.Optional }
);
そしてSomeControllerでは、私は次のようにリダイレクトを行う作用を有する:
return RedirectToAction("SomeAction", new { id = 23, MyString = someString });
私は=「@#someStringで、このリダイレクトを試してみました! $%?& * 1 "という文字列をエンコードしても問題ありません。私は、HttpUtility.UrlEncode(someString)、HttpUtility.UrlPathEncode(someString)、およびUri.EscapeUriString(someString)を使用してそれをエンコードしようとしました。
私はsomeStringを渡すためにTempDataに頼っていましたが、それでも私の好奇心を満たすために、上のコードをどうやって作るのか不思議です。
'web.config'で' relaxedUrlToFileSystemMapping'と 'requestPathInvalidCharacters'を変更しましたか? –
@ EricYinいいえ、私はしませんでした。私はこれらの2つのパラメータを知らなかった。私はそれらを調べます。 –