模型ASP.Net MVC内的渲染模型

时间:2013-10-30 10:46:40

标签: asp.net asp.net-mvc asp.net-mvc-4 razor razorengine

我尝试使用Html.EditorForModel在View中渲染模型。 这是我的模型代码 产品类

public class Product
{
    [Key]
    [HiddenInput(DisplayValue = false)]
    public int ProductId { get; set; }

    public string Name { get; set; }
    public string Model { get; set; }
    public string Serial { get; set; }

    [HiddenInput(DisplayValue = false)]
    public int DealerId { get; set; }

    [ForeignKey("DealerId")]
    public virtual Dealer Dealer { get; set; }
}

经销商类

public class Dealer
{
    [Key]
    public int DealerId { get; set; }

    public string Name { get; set; }
    public int DealerNumber { get; set; }
}

我尝试渲染产品进行编辑。我是这样做的

@using (Html.BeginForm("Edit","Product"))
{        
    @Html.EditorForModel()
    @Html.EditorForModel(Model.Dealer)
    <input class="btn btn-default" type="submit" value="edit" />
}

但是看起来像View两次渲染EditorForModel()。这是屏幕 View Edit

是解决这个问题的方法吗?

2 个答案:

答案 0 :(得分:4)

确实,你打电话给@Html.EditorForModel两次。试试这个:

@using (Html.BeginForm("Edit","Product"))
{        
    @Html.EditorForModel()
    @Html.EditorFor(model => model.Dealer)
    <input class="btn btn-default" type="submit" value="edit" />
}

答案 1 :(得分:0)

而是使用@Html.EditorForModel()两次使用它一次..