• JavaScriptSerializer转换datatime格式为json出现/Data(时间戳)/


    public class DateTimeJavaScriptConverter : JavaScriptConverter
    {
    public override object Deserialize(IDictionary<string, object> dictionary, Type type, JavaScriptSerializer serializer)
    {
    return new JavaScriptSerializer().ConvertToType(dictionary, type);
    }

    public override IDictionary<string, object> Serialize(object obj, JavaScriptSerializer serializer)
    {
    if (!(obj is DateTime)) return null;
    return new CustomString(((DateTime)obj).ToUniversalTime().ToString("O"));
    }

    public override IEnumerable<Type> SupportedTypes
    {
    get { return new[] { typeof(DateTime) }; }
    }

    private class CustomString : Uri, IDictionary<string, object>
    {
    public CustomString(string str)
    : base(str, UriKind.Relative)
    {
    }

    void IDictionary<string, object>.Add(string key, object value)
    {
    throw new NotImplementedException();
    }

    bool IDictionary<string, object>.ContainsKey(string key)
    {
    throw new NotImplementedException();
    }

    ICollection<string> IDictionary<string, object>.Keys
    {
    get { throw new NotImplementedException(); }
    }

    bool IDictionary<string, object>.Remove(string key)
    {
    throw new NotImplementedException();
    }

    bool IDictionary<string, object>.TryGetValue(string key, out object value)
    {
    throw new NotImplementedException();
    }

    ICollection<object> IDictionary<string, object>.Values
    {
    get { throw new NotImplementedException(); }
    }

    object IDictionary<string, object>.this[string key]
    {
    get
    {
    throw new NotImplementedException();
    }
    set
    {
    throw new NotImplementedException();
    }
    }

    void ICollection<KeyValuePair<string, object>>.Add(KeyValuePair<string, object> item)
    {
    throw new NotImplementedException();
    }

    void ICollection<KeyValuePair<string, object>>.Clear()
    {
    throw new NotImplementedException();
    }

    bool ICollection<KeyValuePair<string, object>>.Contains(KeyValuePair<string, object> item)
    {
    throw new NotImplementedException();
    }

    void ICollection<KeyValuePair<string, object>>.CopyTo(KeyValuePair<string, object>[] array, int arrayIndex)
    {
    throw new NotImplementedException();
    }

    int ICollection<KeyValuePair<string, object>>.Count
    {
    get { throw new NotImplementedException(); }
    }

    bool ICollection<KeyValuePair<string, object>>.IsReadOnly
    {
    get { throw new NotImplementedException(); }
    }

    bool ICollection<KeyValuePair<string, object>>.Remove(KeyValuePair<string, object> item)
    {
    throw new NotImplementedException();
    }

    IEnumerator<KeyValuePair<string, object>> IEnumerable<KeyValuePair<string, object>>.GetEnumerator()
    {
    throw new NotImplementedException();
    }

    IEnumerator IEnumerable.GetEnumerator()
    {
    throw new NotImplementedException();
    }

    public IEnumerator GetEnumerator()
    {
    throw new NotImplementedException();
    }
    }
    }

    、、、、、、、、、、、、、、、、

    人后注册一下就可以了

    JavaScriptSerializer jss = new JavaScriptSerializer();
    jss.RegisterConverters(new JavaScriptConverter[]{ new DateTimeJavaScriptConverter()});

    jss.Serialize(users[i]).ToString()

  • 相关阅读:
    面向对象的三个基本特征
    OGRE启动过程详解(OGRE HelloWorld程序原理解析)
    Bullet核心类介绍(Bullet 2.82 HelloWorld程序及其详解,附程序代码)
    windows下Bullet 2.82编译安装(Bullet Physics开发环境配置)
    1303: Decimal
    分组背包,每组最多选1个
    椒盐效果
    自我介绍
    题目1539:师弟
    upper_bound()
  • 原文地址:https://www.cnblogs.com/Shjergsen/p/7058865.html
Copyright © 2020-2023  润新知