javascript - 将 javascript datetime 转换为 C# 时出现解析错误

标签 javascript c# kendo-ui date-parsing kendo-timepicker

我正在使用剑道时间选择器在 UI 上显示时间。小部件以以下格式提交时间 2016 年 5 月 16 日星期一 01:00:00 GMT-0500(中部夏令时)

我关注了文章here将日期时间转换为 .Net 日期时间对象 但是我在解析时遇到错误

{"String was not recognized as a valid DateTime."}

解析日期后,我想将其转换为 UTC 并将时间部分存储到数据库中。

    [HttpPost]
    public ActionResult Save(MyModel model)
    {                  
        // getting error at line below while parsing    
        DateTime dt = DateTime.ParseExact(model.SelectedTimeString.Substring(0,33),
                       "ddd MMM d yyyy HH:mm:ss GMT-zzzz",
                        CultureInfo.InvariantCulture);           

         var utcTime = dt.ToUniversalTime().TimeOfDay;

        // store utcTime in database here

        return View("Index", model);
    }

cshtml

    @using (@Html.BeginForm("Save", "Home"))
    {
        <div class="row">
            <div class="col-lg-6">
                @(Html.Kendo().TimePickerFor(x => x.SelectTime).Events(e => e.Change("changeDate")))           
                @Html.HiddenFor(x=>x.SelectedTimeString)          
            </div>
        </div>
        <button type="submit">Save</button>
    }

javascript

    <script type="text/javascript">
        function changeDate() {      
            var kendoDate = $('#SelectTime').getKendoTimePicker();       
            $('#SelectedTimeString').val(kendoDate.value());
        }
    </script>

最佳答案

如果日期选择器为空或值无效,以下将返回日期对象或 null:

var data = $('#SelectTime').data('kendoDatePicker').value();

您可以通过将其分配给变量并执行 data.getFullYear() 来对其进行测试。之后,您可以使用:

var dataAsJsonString = JSON.stringify(data);

这将返回一个 UTC 日期,它是一个字符串,如下所示: “2011-10-10T05:00.000Z”

这是一个 fiddle 示例:http://jsfiddle.net/MadCodeMonkey/191a7c53/

关于javascript - 将 javascript datetime 转换为 C# 时出现解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37264215/

相关文章:

c# - 如何将无限重复的数字处理为小数?

c# 使用 IComparable 接口(interface)对数组进行排序

javascript - 禁用页面中的所有 kendoui 元素

javascript - RxJS 中的 If 与 Filter 性能比较

javascript - 在 Chart.js 中使用准备好的数据集

javascript - 概念——队列有方向吗?

C#如何判断一个Form的状态

asp.net-mvc - Kendo Grid MVC 结合了 ajax 绑定(bind)和服务器编辑

javascript - 无法从 Kendo Window 中的内容关闭窗口

javascript - 处理触摸屏上的悬停事件