【问题标题】:How to serialize datetime value in C# ASP.NET?如何在 C# ASP.NET 中序列化日期时间值?
【发布时间】:2016-06-07 04:35:43
【问题描述】:

我正在使用 ASP.NET MVC5 框架来构建应用程序。我需要一个函数来让我轻松地将广告对象转换为 json 字符串。

我发现这个很棒的课程可以满足我的需要。

using System.Web.Script.Serialization;
namespace App.Support
{
    public static class JsonHelpers
    {
        public static string ToJson(this object obj)
        {
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(obj);
        }

        public static string ToJson(this object obj, int recursionDepth)
        {
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            serializer.RecursionLimit = recursionDepth;
            return serializer.Serialize(obj);
        }
    }
}

我不确定如何解决的唯一问题是日期时间值。

从数据库中读取包含一些日期时间列的列表后,我想将列表转换为 json。当我使用 JsonHelper.ToJson(mylist);日期时间字段将如下所示Date(1456182878660)

如何将该值转换为YYYY-MM-DD- H:i:s 格式?当我使用 jQuery 解析 json 字符串时,日期时间值看起来像这样 /Date(1456182878660)/

【问题讨论】:

    标签: c# jquery asp.net json datetime


    【解决方案1】:

    我会推荐 Newtonsoft.Jsonone of the many alternatives 而不是“本机”JavaScriptSerializer。 Newtonsoft.Json(但也有很多其他的)允许for much better control of the (de)serialization process 和许多perform better。更好的是:由于您正在使用 ASP.Net,因此该软件包可能已经安装在您的项目中。

    【讨论】:

    • 然后我会使用这个 JsonConvert.SerializeObject(mylist) 将对象转换为 json 字符串吗?
    • 嗯,是的。你为什么不试试呢? :-)
    猜你喜欢
    • 1970-01-01
    • 2012-06-09
    • 1970-01-01
    • 1970-01-01
    • 2016-04-16
    • 1970-01-01
    • 2019-09-30
    • 2015-07-21
    • 2018-06-02
    相关资源
    最近更新 更多