我希望在我的MVC项目的每个视图页面上放置一个随机图片。因此,我创建了一个返回PartialView的方法,并在共享的Layout页面中调用该方法。
当我尝试使用正确的用户名和密码登录时,这很有效。用户已登录,并且每个页面都包含一个随机图像。但是,当我给出无效的用户名和密码组合时,共享的布局页面找不到我要使用@Html.Action
调用的控制器,实际上应该返回登录视图并显示错误消息“用户名和密码组合无效”,当然,还要包括随机图像。
InnerException:
{"在控制器'Project.WebUI.Controllers.HomeController'上找不到公共操作方法'RandomSponsor'。"}
我的共享布局中的Html.Action。
@Html.Action("RandomSponsor", "Home")
在HomeController中的方法。
[HttpGet]
[ChildActionOnly]
public ActionResult RandomSponsor()
{
var model = service.getRandomSponsor();
return PartialView("RandomSponsor", model);
}
getRandomSponsor方法正常运行,它总是返回一个随机字符串值,该值将返回到RandomSponsor.cshtml视图。
RandomSponsor.schtml(仅包含图像字符串)
<img src="~/Content/Images/Advert/@(Model)" alt="a" />
我在网上搜索了这个问题,但并没有找到解决方案,请问有谁知道答案吗?
可能和HttpGet或HttpPost有关吗?谢谢。