Umbraco 5 - 将数据从控制器传递到视图

时间:2012-02-14 14:23:49

标签: model-view-controller umbraco

我已经和Umbraco 5玩了好几天了。我已经使用一些我已插入页面模板的虚拟文本进行了局部视图。工作良好。问题是当我必须将数据从控制器传递到视图时。

视图继承自RenderViewPage(@inherits RenderViewPage),默认为Umbraco 5.我试图通过@model ViewPage<Umbraco.Cms.Web.UI.Models.Test>按常规MVC方式进行,但是我收到了一个错误。

1 个答案:

答案 0 :(得分:2)

首先应该创建一个Surface控制器(可以在单独的项目中完成,也可以直接在主项目中创建控制器文件夹):

public class ContactFormSurfaceController : SurfaceController
{
    [ChildActionOnly]
    public PartialViewResult ContactForm()
    {
        var model = new ContactViewModel();
        return PartialView(model);
    }
}

不要继承表单RenderViewPage只是用您自己的模型强烈键入您的视图 然后创建一个调用ChildAction ContactForm的宏 您可以通过编辑器或模板中的代码添加您的操作:@ Umbraco.RenderMacro(“ContactForm”)