我陷入了这样一种情况,即我想避免用户通过在浏览器中输入 URL 来导航到视图。但是可以在单击其操作导航到该视图的按钮时导航到该视图。
例如:我有一个指向ActionResult(Create)的 href 链接。我希望用户在单击该链接时导航到此视图(Create),但当它在浏览器中输入 URL(如(/Create) 时不导航到该链接时)。
我在这个门户网站上找到了一些解决方案,例如:
1) 将 ActionResult 设为私有 - 但这会导致Http:404 Page not found 错误,方法是在浏览器中输入 URL 并单击导航到 Create ActionResult 的链接。
引用的链接:如果直接请求,我是否可以阻止某些 PartialViews 被提供?2)在 ActionResult 方法上 使用 DataAnnotaion [ChildActionOnly] 。但这也没有给我想要的结果,它也给了我一个错误。同样的错误 HTTP:404。
3)我尝试使用ControllerContext.IsChildAction但它总是返回值 false 是否我在链接单击或输入 URL 时导航到此 ActionResult 所以我无法判断该怎么做。如果它在一种情况下返回 true 或在其他情况下返回 false 我会解决无论如何重定向我的问题。
Asp.net mvc 如何防止浏览器调用action方法?
帮帮我伙计们..