我用umbraco 7 mvc
我只想在局部视图中渲染umbraco字段。不知道该怎么做。@CurrentPage或@ Umbraco.Field或RenderMacro等不起作用
我有以下部分看法
@model MvcImport.Models.ImportModel
@{
var formSent = false;
var success = TempData["Success"];
if (success != null)
{
bool.TryParse(success.ToString(), out formSent);
}
}
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@if (formSent)
{
<p>Thanks, we'll get back to you soon!</p>
}
else
{
using (Html.BeginUmbracoForm<MvcImport.Controllers.ImportController>("ImportExcel", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div>
@Html.LabelFor(x => x.FileUpload)
@Html.TextBoxFor(x => x.FileUpload, new { type = "file", name = "Files" })
@Html.ValidationMessageFor(x => x.FileUpload)
</div>
<div>
@Html.LabelFor(model => model.FileType)<br />
@Html.DropDownListFor(model => model.FileType, Model.FileTypes)
@Html.ValidationMessageFor(x => x.FileType)
</div>
<input type="submit" value="Submit" class="btn-submit" />
}
}
我只是想替换
<p>Thanks, we'll get back to you soon!</p>
与当前页面字段例如
@currentPage.thankYouCopy
要么
@Umbraco.Field("thankYouCopy")
怎么做?
我在主视图中通过以下方式调用部分:
@Html.Partial("Import", new MvcImport.Models.ImportModel { FileTypes = fileTypes })
谢谢
我根本没有测试过,但这应该可以让您走上正确的道路……我可以告诉您,您想替换一下:
@model MvcImport.Models.ImportModel
有了这个:
@inherits Umbraco.Web.Mvc.UmbracoViewPage<MvcImport.Models.ImportModel>
这应该使您可以访问UmbracoHelper,并允许您像这样访问属性:
@Umbraco.Field("thankYouCopy")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句