【问题标题】:Parsing error while converting javascript datetime into C#将javascript日期时间转换为C#时解析错误
【发布时间】:2016-09-12 20:25:04
【问题描述】:

我正在使用剑道时间选择器在 UI 上显示时间。小部件以以下格式提交时间 Mon May 16 2016 01:00:00 GMT-0500 (Central Daylight Time)

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

{“字符串未被识别为有效的日期时间。”}

解析日期后,我想将其转换为 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>

【问题讨论】:

  • 在浏览器中将其转换为 UTC 会容易得多....(并且已在您链接的问题中显示)
  • 那么你如何在javascript中将我拥有的日期字符串转换为UTC

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


【解决方案1】:

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

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

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

var dataAsJsonString = JSON.stringify(data);

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

这是一个小提琴示例:http://jsfiddle.net/MadCodeMonkey/191a7c53/

【讨论】:

    猜你喜欢
    • 2013-03-27
    • 2016-12-17
    • 1970-01-01
    • 1970-01-01
    • 2011-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多