2012-05-21 29 views
1

您好我有这种说法至极显示人根据范围的日期,我选择在酒店我免费客房:开始日期,结束日期。 我想通过“开始日期和‘结束日期’与房间ID作为对象的路由值一起CreateReservation动作。 @ Html.ActionLink(” RezervaCamera”,‘CreateReservation’,‘保留’,新的{RoomID = room.RoomID },“”),不知道这how.Is更多钞票来传递一个字符串作为路由对象通字符串作为obejects路由值

这是我的看法:

@using (Html.BeginForm("SearchFree", "Reservation", FormMethod.Get)) 
    { 
    <div class="editor-label"> 
    <label for="StartDate">Select Start date: 
    </label>@(Html.JQueryUI().Datepicker("StartDate").MinDate(DateTime.Today).ShowButtonPanel(true).ChangeYear(true).ChangeMonth(true).NumberOfMonths(2)) 


    </div> 
    <div class="editor-label"> 
     <label for="EndDate">Select End date:</label>@(Html.JQueryUI().Datepicker("EndDate").MinDate(DateTime.Today).ShowButtonPanel(true).ChangeYear(true).ChangeMonth(true).NumberOfMonths(2)) 


</div> 

<p> 
    <input type="submit" value="Search" /> 
</p> 

    } 

      <div class="styler"> 
      <fieldset class="ui-widget"> 
<legend class="ui-state-legend-default ui-corner-top ui-corner-bottom">CamereleLibere 

    <ul id="album-list"> 
     @foreach (var album in Model) 
     { 
      @Html.ActionLink("RezervaCamera", "CreateReservation", "Reservation", new {RoomID= room.RoomID }, "") 



        <div style="float:left;margin-right:20px"> 
        <img title=CameraNumarul:@album.Room_number width="75" height="75" src="@Url.Action("GetImage", "Rooms", 
        new { album.RoomID})" /> 

        <span>Numarul de locuri:@album.NumberofSpots</span> 




        </a> 

      </li> 
     } 

回答

0

你似乎可以用一些自定义Html.JQueryUI().Datepicker帮手这是。没有标准的查看生成的HTML源代码,我想这帮助生成一个文本输入:

<input type="text" name="StatrDate" ...> 

注意name属性。现在,在你的控制器动作使用相同的名称:

[HttpPost] 
pubilc ActionResult SearchFree(int roomID, DateTime startDate, DateTime endDate) 
{ 
    ... 
} 

甚至更​​好的使用视图模型:

public class ReservationViewModel 
{ 
    public int RoomID { get; set; } 
    public DateTime StartDate { get; set; } 
    public DateTime EndDate { get; set; } 
} 

然后:

[HttpPost] 
pubilc ActionResult SearchFree(ReservationViewModel model) 
{ 
    ... 
} 

而且看一看的following blog post这讨论了在GET和POST请求之间解析DateTime时,默认模型联编程序使用的格式的差异。对于GET请求,预计采用以下格式:yyyy-MM-dd

+0

这部分工作对我来说,当我点击预订的我展示一个房间传到“创建reservetion”行动的日期我,当我搜索的免费之前已经选定我显示的免费客房是我想要做的是房间 – jonny

+0

是的,这就是我向你展示的代码会发生什么。您应该让您的控制器操作将这些日期时间作为附加参数。 –