2

我在控制器级别应用了一个路由属性,但我想排除一个操作被路由。不覆盖但完全排除路线。如何做到这一点?

假设我有:

[RoutePrefix("promotions")]
[Route("{action=index}")]
public class ReviewsController : Controller
{
    // eg.: /promotions
    public ActionResult Index() { ... }

    // eg.: /promotions/archive
    public ActionResult Archive() { ... }

    // eg.: /promotions/new
    public ActionResult New() { ... }

    // eg.: /promotions/edit/5
    [Route("edit/{promoId:int}")]
    public ActionResult Edit(int promoId) { ... }

    public void Internal() { ... }
}

我希望内部不被路由。

我本来希望找到 [DoNotRoute] 或 [Ignore] 属性,但我没有找到类似的东西。

4

1 回答 1

15

使用[NonAction]属性:

[NonAction]
public void Internal() { ... }
于 2014-03-14T18:14:52.867 回答