9

我的控制器中有一个方法,我不想从浏览器的地址栏中调用它...

有没有办法做到这一点?也许某种注释,路由配置中的修改?我有哪些选择?

4

2 回答 2

16

如果您打算仅在控制器或视图中使用此操作,那么您可以使用ChildActionOnly属性。

如果您想使用 POST 访问它,那么您可以使用[HttpPost]属性。

但是,如果您希望使用它GET(即使用 AJAX 调用等)并且不希望用户使用地址栏访问它,那么您可以按照本教程使您的操作仅 AJAX。

或者,如果您只是想要一个根本不是 Action 的方法(即不能使用 HTTP 调用),那么您可以制作它private或使用[NonAction]属性

于 2013-05-22T17:38:20.757 回答
7

在方法上使用NonAction属性。

于 2015-05-25T13:31:48.917 回答