【问题标题】:Umbraco 7 error, when trying to render model through partial View尝试通过部分视图渲染模型时,Umbraco 7 错误
【发布时间】:2016-05-12 13:55:56
【问题描述】:

尝试从 Umbraco 7 中的自定义模型呈现表单时出现以下错误。

传入字典的模型项是类型 'Umbraco.Web.Models.RenderModel',但是这个字典需要一个模型 “LeaveRequestStart”类型的项目。

我正在使用Umbraco 此处的文档使用模型、表面控制器和局部视图生成表单,但一直收到上述错误。

这是模型

public class LeaveRequestStart { 

    [Required]
        public String LeaveStart { get; set; }
        [Required]
        public String LeaveEnd { get; set; }
        [Required]
        public string LeaveType { get; set; }
        [Required]
        public Boolean HalfDayStart { get; set; }
        public Boolean HalfDayEnd { get; set; }



    }

这里是部分

@model LeaveRequestStart    
    @using UmbracoWithMvc.Controllers

    @using (Html.BeginUmbracoForm("CreateLeave", "LeaveRequestSurface"))
    {
        @Html.EditorFor(x => Model)
        <input type="submit" />
    }

任何帮助将不胜感激,我也尝试从 RenderModel 派生我的 LeaveRequestStart 模型,但仍然没有爱。

【问题讨论】:

    标签: .net partial umbraco7


    【解决方案1】:

    这里的错误告诉你,默认的渲染模型正在被传递到局部视图中,它需要一个实例化的 LeaveRequestStart 模型才能工作/渲染。

    在您用来调用此部分的视图中,部分是如何被调用的? 在示例教程中,它显示为这样;

    @Html.Partial("BlogCommentForm")
    

    在您看来,它的外观如何?它应该看起来像这样;

    @Html.Partial("PartialView", Model.LeaveRequestStart );
    

    【讨论】:

    • 感谢您的逻辑是正确的,在将其作为 @Html.Partial("LeaveForm", new LeaveRequestStart()) 传递后它起作用了
    猜你喜欢
    • 1970-01-01
    • 2013-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多