Asp.net mvc 获取currentBlock作为方法-epserver MVC中的参数
问候。我的块有一个控制器,其中包含:Asp.net mvc 获取currentBlock作为方法-epserver MVC中的参数,asp.net-mvc,episerver,Asp.net Mvc,Episerver,问候。我的块有一个控制器,其中包含: public class QuestionBlockController : BlockController<QuestionBlock> { public override ActionResult Index(QuestionBlock currentBlock) { return PartialView(currentBlock); } pu
public class QuestionBlockController : BlockController<QuestionBlock>
{
public override ActionResult Index(QuestionBlock currentBlock)
{
return PartialView(currentBlock);
}
public void Vote(QuestionBlock currentBlock)
{
//Do stuff
}
问题是,当我单击actionlink时,它会调用方法投票,但currentBlock为null
如果我调试currentBlock for Index方法,则会将currentBlock正确设置为当前BlockData对象
我错过了什么
问候,
ChrisRun您应该在操作链接中提到currentBlock参数。如果QuestionBlock是从中调用Ajax.ActionLink的视图模型,则应如下所示:
@Ajax.ActionLink("Vote", "Vote", "QuestionBlock",Model,
new AjaxOptions
{
HttpMethod = "POST"
}, new { @class = "btn btn-vote" })
模型(currentBlock)将作为参数传递给投票操作 我得到了将currentBlock contentreference作为参数值传递给ajax请求的建议。这很好
@Ajax.ActionLink("Vote", "Vote", "QuestionBlock", new {currentBlock = Model.ContentLink,
new AjaxOptions
{
HttpMethod = "POST"
}, new { @class = "btn btn-vote" })
谢谢你给我指出了正确的方向,但不是完全正确的答案。我添加了我的解决方案作为答案。
@Ajax.ActionLink("Vote", "Vote", "QuestionBlock", new {currentBlock = Model.ContentLink,
new AjaxOptions
{
HttpMethod = "POST"
}, new { @class = "btn btn-vote" })