1
@Html.ActionLink("pSearch", "Results", null, new {target="_blank"})

不起作用,因为它不会将表单数据发布到“结果”控制器操作,并且返回的只是 404 错误。

4

1 回答 1

2

假设您使用的是默认路由:

routes.MapRoute(
    "Default",
    "{controller}/{action}/{id}",
    new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

然后:

@Html.ActionLink("pSearch", "Results", null, new { target="_blank" })

将产生:

<a href="/Home/Results" target="_blank">pSearch</a>

因此,如果您希望获得除 404 之外的任何其他内容,希望您在Results里面定义了一个动作HomeController,对吗?

像这样:

public class HomeController : Controller
{
    public ActionResult Results()
    {
        return View();
    }
}

否则你真的不能期待超过 404 错误,对吗?

很明显,但可能值得一提的是,该操作将期望~/Views/Home/Results.cshtml~/Views/Home/Results.aspx视图被定义。你已经在这个位置定义了它,不是吗?

于 2012-12-06T21:14:41.660 回答