1
我有这个我CSHTML页如何通过参数Sitecore的控制器的渲染方法
<div class="liveMatch-timer">
@Html.Sitecore().Controller("Blog", "LiveBlogHeader")
</div>
上,这是我控制器
public PartialViewResult LiveBlogHeader()
{
var matchHeader = GetMatchDayHeader();
return PartialView(BlogConstant.LiveBlogHeaderPath, matchHeader);
}
我有一个隐藏字段名为“liveMatchItemId “在我的cshtml页面上。我想将它的价值传递给控制器,以便我可以在控制器内部访问它。我期待改变控制器的定义是这样的
public PartialViewResult LiveBlogHeader(string liveMatchItemId)
任何人都可以帮助我了解我该如何做到这一点?我是新手sitecore和MVC。
编辑:我能够做到这一点使用下面的代码
@Html.Action("LiveBlogHeader", "Blog", new { liveMatchItemId = "12" })
但我怎么可以设置隐藏字段的值,而不是静态字段“12”?
你能告诉我如何用隐藏域的值来声明模型吗?我是MVC的新手 – Akie
你需要有一个能代表你模型的类。我们说公共类ViewModel。在它里面,你需要添加一个属性:public string LiveMatchItemId {get; set;}。你的控制器将设置该值:var model = new ViewModel(){LiveMatchItemId =“Your Value”};并返回View(“path”,model);在您的视图中:@ Html.HiddenFor(m => m.LiveMatchItemId) –