首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在method - EPiServer MVC中获取EPiServer作为参数

在method - EPiServer MVC中获取EPiServer作为参数
EN

Stack Overflow用户
提问于 2015-11-11 07:33:12
回答 2查看 644关注 0票数 2

打招呼。我为我的区块设置了一个控制器,其中包括:

代码语言:javascript
复制
 public class QuestionBlockController : BlockController<QuestionBlock>
    {
        public override ActionResult Index(QuestionBlock currentBlock)
        {
            return PartialView(currentBlock);
        }

        public void Vote(QuestionBlock currentBlock)
        {
              //Do stuff
        }

方法投票是通过ajax调用调用的,在此视图中可以看到该块:

代码语言:javascript
复制
@Ajax.ActionLink("Vote", "Vote", "QuestionBlock",
                        new AjaxOptions
                        {
                            HttpMethod = "POST"
                        }, new { @class = "btn btn-vote" })

问题是,当我单击actionlink时,它会调用方法投票,但currentBlock是null

如果我调试currentBlock for Index,它将被正确地设置为当前的BlockData对象。

我遗漏了什么?

致以敬意,

ChrisRun

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-18 14:37:51

我建议将currentBlock内容引用作为参数值传递给ajax request.This工作正常。

代码语言:javascript
复制
@Ajax.ActionLink("Vote", "Vote", "QuestionBlock", new {currentBlock = Model.ContentLink,
                        new AjaxOptions
                        {
                            HttpMethod = "POST"
                        }, new { @class = "btn btn-vote" })
票数 3
EN

Stack Overflow用户

发布于 2015-11-11 10:40:44

您应该在操作链接中提到currentBlock参数。如果QuestionBlock是您从Ajax.ActionLink调用的视图模型,则应该如下所示:

代码语言:javascript
复制
@Ajax.ActionLink("Vote", "Vote", "QuestionBlock",Model,
                        new AjaxOptions
                        {
                            HttpMethod = "POST"
                        }, new { @class = "btn btn-vote" })

模型(CurrentBlock)将作为参数传递给投票行为。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33646015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档