Umbraco局部视图宏

时间:2013-08-21 17:32:51

标签: asp.net-mvc umbraco

我是Umbraco和MVC的新手,但不是Webforms的新手。我有一个部分视图在Umbraco模板中工作正常,但我也希望它可以在内容丰富的文本编辑器中使用,而不仅仅是在模板中。

模板调用部分视图,如:

@Html.Partial("ContactForm", new Mynamespace.UmbracoCms.ContactFormModel())

在Umbraco后台的Developer选项卡上的Partial View Macro Files下,我为部分视图添加了.cshtml文件。

@inherits Umbraco.Web.Mvc.UmbracoViewPage<Mynamespace.UmbracoCms.ContactFormModel>
@{
    Layout = null;
}

<h3>Contact Form</h3>
@using (Html.BeginUmbracoForm("SendEmail", "ContactFormSurface"))
{
    <div class="formRow">
        @Html.LabelFor(x => Model.Name)
        @Html.EditorFor(x => Model.Name)
        @Html.ValidationMessageFor(x => Model.Name)
        </div>

    <div class="formRow">
        @Html.LabelFor(x => Model.Email)
        @Html.EditorFor(x => Model.Email)
        @Html.ValidationMessageFor(x => Model.Email)
        </div>

    <div class="formRow">
        @Html.LabelFor(x => Model.Comment)
        @Html.EditorFor(x => Model.Comment)
        @Html.ValidationMessageFor(x => Model.Comment)
        </div>


<div class="buttonRow">
    <input type="submit" name="Submit"/>
    </div>
}

我显然遗漏了一些东西,但我找不到任何文档或教程来完成我想要的东西。

感谢您提供的任何帮助!

1 个答案:

答案 0 :(得分:1)

听起来您需要做的就是将宏添加到内容中。

在Umbraco Admin后端的Developer部分中,单击Partial View Macro Files文件夹右侧的,然后选择create。保持勾选Create Macro复选框并输入宏的名称。在创建的.cshtml文件中,粘贴对部分视图的调用并保存。

然后听到您错过的位于内容丰富的文本编辑器中,将光标放在您想要宏的位置,并从顶部栏中选择插入宏,在那里保存并发布和选择样式等,然后选择你刚刚创建的宏。

我的版本和你的版本之间的一个区别是@ Html.Partial()我使用@ Html.Action()。