如何在ASP.Net MVC 5(Razor View)中使用模型中的html helper创建标签文本

时间:2014-04-14 11:01:35

标签: asp.net-ajax html-helper asp.net-mvc-ajax

我正在尝试使用我的模型RoomAvailabilitySummary中的html helper创建标签文本

查看设计:

@model IEnumerable<WBE.Model.RoomAvailabilitySummary>

@using(Ajax.BeginForm("RoomsAvail", new AjaxOptions
                                       {
                                        UpdateTargetId = "RoomsAvailData",
                                        InsertionMode = InsertionMode.Replace
                                       }))
{
 @Html.AntiForgeryToken()
 <div class="container paddingzero">
    <div class="row rowbackground">
        @Html.DisplayFor(model => model.ARRDAT)
    </div>
    <div class="row rowbackground">
        @Html.EditorFor(model => model.ARRDAT)
    </div>
    <div class="row rowbackground">
        @Html.DisplayFor(model => model.DEPDAT)
    </div>
    <div class="row rowbackground">
        @Html.EditorFor(model => model.DEPDAT)
    </div>
 </div>
}
<div class="tab-content" id="RoomsAvailData">
    @Html.Partial("_AvailableRoomsandPackages", Model);
</div>

控制器:

public class RoomAvailabilitySummary
{
    [Key]
    public int CUSTCODE { get; set; }
    [Display(Name = "Checkin")]
    public string ARRDAT { get; set; }
    [Display(Name = "Check out")]
    public string DEPDAT { get; set; }
}

问题:我无法使用带有html帮助程序的模型创建标签文本。

我得到的错误:    的的IEnumerable&#39;    不包含&#39; ARRDAT&#39;的定义和不    推广方法&#39; ARRDAT&#39;接受第一个论点    IEnumerable类型

我在代码中犯了什么错误?

1 个答案:

答案 0 :(得分:0)

我在设计中做了以下更改,并按预期工作。

@Html.Partial("_BookingInputs")                 
<div class="tab-content" id="RoomsAvailData">
 @Html.Action("AvailableInventory", "Bookings"); 
</div>
<div id="Loading" class="Loading">
</div>