我正在构建一个MVC 5 Web应用程序。在一个Razor视图中,我使用JQuery DatePicker从日历中选择一个日期。然后我有两个下拉菜单,一个菜单列出24小时制的每个小时,另一个菜单列出分钟值,即1-60。



<select id="startDateHours" name="startDateHours"><option value="00:00">00:00</option>
<option value="01:00">01:00</option>
<option value="02:00">02:00</option>
<option value="03:00">03:00</option>
<option value="04:00">04:00</option>
...
...
<option value="21:00">21:00</option>
<option value="22:00">22:00</option>
<option value="23:00">23:00</option>
</select>

<select id="startDateMinutes" name="startDateMinutes"><option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
...
...
<option value="57">57</option>
<option value="58">58</option>
<option value="59">59</option>
<option value="60">60</option>
</select>





最初,我使用了JQuery DateTimePicker,但是我的客户发现该插件难以使用。

我需要从DatePicker中获取值,并将其与从两个下拉列表中选择的值组合在一起,以创建一个DateTime值,然后可以将其插入到SQL Server数据库表中。

在我的MVC控制器中,我可以像这样检索值

[HttpPost]
public ActionResult Create(ViewModel model)
{
     DateTime _date = model.StartDate //Value from DatePicker
     String _hour = model.StartDateHour //Value from drop down for hour
     String _min = model.StartDateMinute //Value from drop down for minute

     //Create DateTime object using values above
}


现在,我需要结合这3个值来创建DateTime对象,但我不知道如何做。

有人有建议吗?

提前致谢。

最佳答案

您可以使用以下重载创建新的DateTime:

new DateTime(year, month, day, hour, minute, second)


例:

var myDate = new DateTime(model.StartDate.Year, model.StartDate.Month, model.StartDate.Day, _hour, _min, 0);

关于c# - 将时间值从下拉列表添加到DatePicker值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28675632/

10-16 10:05