Asp.net mvc 用作视图名称的查询字符串参数
我有一些这样的代码Asp.net mvc 用作视图名称的查询字符串参数,asp.net-mvc,asp.net-mvc-5,Asp.net Mvc,Asp.net Mvc 5,我有一些这样的代码 public ActionResult BookNav(string activeId) { return PartialView(activeId); } 并尝试对该操作进行Ajax调用。我使用 @Url.Action("BookNav", "Home", new { activeId = "navHome" }) 这将生成URL 我在回调过程中得到一个HTTP 500。为了简化问题,我在浏览器中打开了一个新选项卡,并粘贴到该URL中。结果是: The par
public ActionResult BookNav(string activeId)
{
return PartialView(activeId);
}
并尝试对该操作进行Ajax调用。我使用
@Url.Action("BookNav", "Home", new { activeId = "navHome" })
这将生成URL
我在回调过程中得到一个HTTP 500。为了简化问题,我在浏览器中打开了一个新选项卡,并粘贴到该URL中。结果是:
The partial view 'navBios' was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Home/navBios.aspx
~/Views/Home/navBios.ascx
...
但是,如果我粘贴的URL没有查询字符串参数
我得到了预期的输出
为什么使用我的查询字符串中的值来选择视图名称,以及如何修复它?将字符串传递给
返回PartialView()
,该视图使用期望视图名称(a字符串
)的重载作为其参数。您需要将参数作为对象传递
public ActionResult BookNav(string activeId)
{
return PartialView((object)activeId);
}
将字符串传递给
return PartialView()
,该视图使用期望视图名称(字符串作为其参数)的重载。您需要将参数作为对象传递
public ActionResult BookNav(string activeId)
{
return PartialView((object)activeId);
}
哦!我被这样一个想法所困扰,即BookNav本身并没有被找到,而不是视图。谢谢哦!我被这样一个想法所困扰,即BookNav本身并没有被找到,而不是视图。谢谢