win桌面程序,json返回的集合,日期格式为
    "createDate": "2013-06-25T00:27:03.277Z",
绑定显示的是0点27分,我想让他显示8点27分,哪儿可以设置时区?谢谢

解决方案 »

  1.   

    2013-06-25T00:27:03.277Z  这个是0时区的了,我让他显示东八区呀。其实数据库也是保存的东八区,我就是mvc输出json数据,他自动把日期格式转换为上面的0时区了
      

  2.   

    void Main()
    {
    string str="2013-06-25T00:27:03.277Z";
    DateTime dt=DateTime.ParseExact(str,"yyyy-MM-ddTHH:mm:ss.fffZ",new System.Globalization.CultureInfo("en-us"));
    Console.WriteLine(dt.ToString("HH:mm"));  //08:27
    }
      

  3.   


    这样说转换了吧,我是想省力点,绑定到DataGridView
    用的是 Newtonsoft.Json.Linq, JObject.Parse(readText)
    o("data")("items")
    这样获取数据去绑定的。
      

  4.   


    private void dataGridView1_CellFormatting(object sender,
        DataGridViewCellFormattingEventArgs e)
    {
        if (e.ColumnIndex == 0)  // your  data columns
        {
           DateTime dt=DateTime.ParseExact(e.Value,"yyyy-MM-ddTHH:mm:ss.fffZ",new System.Globalization.CultureInfo("en-us"));
            e.Value = dt.ToString("HH:mm"); // apply formating here
            e.FormattingApplied = true;
        }
    }
    http://msdn.microsoft.com/en-us/library/z1cc356h.aspx?ppud=4
      

  5.   

    "//Date(NUMBER(+/-)TZD)//"  这种类型是带有市区JSON转化默认的是UTC格式 所有只有在解析JSON钱 进行字符格式 
      

  6.   

    当然这里最好用 DateTime.TryParseExact方法
      

  7.   


    这样说转换了吧,我是想省力点,绑定到DataGridView
    用的是 Newtonsoft.Json.Linq, JObject.Parse(readText)
    o("data")("items")
    这样获取数据去绑定的。修改Newtonsoft.Json源代码的new data 格式
    DateTime.Now - DateTime.UtcNow这样算方便了
      

  8.   


    这样说转换了吧,我是想省力点,绑定到DataGridView
    用的是 Newtonsoft.Json.Linq, JObject.Parse(readText)
    o("data")("items")
    这样获取数据去绑定的。修改Newtonsoft.Json源代码的new data 格式
    DateTime.Now - DateTime.UtcNow这样算方便了是Newtonsoft.Json的问题,CellFormatting的时候已经丢失时区信息了,改Newtonsoft.Json太麻烦,我在CellFormatting里加八个小时来解决了。