C# DateTime的时区
C#中可以通过DateTime的Kind属性指定DateTime的时区
DateTimeKind有3个枚举值:
Unspecified:未指定为UTC时间或本地时间
Utc: UTC时间
Local: 本地时间
var date1 = new DateTime(2018, 1, 2, 3, 4, 5);
Console.WriteLine("{0}\t{1:o}\t{2:o}", date1.Kind, date1, date1.ToUniversalTime());
var date2 = new DateTime(2018, 1, 2, 3, 4, 5, DateTimeKind.Local);
Console.WriteLine("{0}\t{1:o}\t{2:o}", date2.Kind, date2, date2.ToUniversalTime());
var date3 = new DateTime(2018, 1, 2, 3, 4, 5, DateTimeKind.Utc);
Console.WriteLine("{0}\t{1:o}\t{2:o}", date3.Kind, date3, date3.ToUniversalTime());
结果如图:

当Kind为Unspecified时,服务器按照当地时区进行解析,传递个给其他服务器时,其他服务器按各自所在的时区进行解析。所以,DateTime在多个服务器之前传递时,应指定为Local或Utc
下面是东八区的服务器解析东六区时间,解析正常
var date4 = DateTime.Parse("2018-01-02T03:04:05+06:00");
Console.WriteLine("{0}\t{1:o}\t{2:o}", date4.Kind, date4, date4.ToUniversalTime());

Javascript中,new Date(dateString)中的dateString参数支持ISO 8601格式的字符串,如图

*2018-01-02T03:04:05将被解析为客户端所在时区,所以服务端返回给客户端的时间应指定时区,以便客户端将时间转为正确的当地时间
客户端向服务端传递时间时,可通过Date.toISOString()转为ISO格式的字符串

C# DateTime的时区的更多相关文章
- JavaScript 解析 Django Python 生成的 datetime 数据 时区问题解决
JavaScript 解析 Django/Python 生成的 datetime 数据 当Web后台使用Django时,后台生成的时间数据类型就是Python类型的. 项目需要将几个时间存储到数据库中 ...
- .Net DateTime跨时区相关问题
项目:.Net CS结构,WCF通信,MySql存储. 场景:客户端(UTC+07:00)获取本地时间(DateTime对象)2017-01-17 15:20:12,通过WCF(http)传输至服务端 ...
- MySQL中TIMESTAMP和DATETIME区别
1.两者的存储方式不一样 TIMESTAMP:把客户端插入的时间从当前时区转化为UTC(世界标准时间)进行存储.查询时,将其又转化为客户端当前时区进行返回. DATETIME:不做任何改变,基本上是原 ...
- Python之日期与时间处理模块(date和datetime)
本节内容 前言 相关术语的解释 时间的表现形式 time模块 datetime模块 时间格式码 总结 前言 在开发工作中,我们经常需要用到日期与时间,如: 作为日志信息的内容输出 计算某个功能的执行时 ...
- time和datetime和tzinfo
time和datetime模块还有tzinfo (时区)(一直不明白两者的区别,然后摘了两片文章(最后面的两个链接),很清晰...) 一.time模块 常用函数 1. time()函数 time()函 ...
- 【转】Python之日期与时间处理模块(date和datetime)
[转]Python之日期与时间处理模块(date和datetime) 本节内容 前言 相关术语的解释 时间的表现形式 time模块 datetime模块 时间格式码 总结 前言 在开发工作中,我们经常 ...
- ObjectId与DateTime的互相转换
s会用mongdb中经常会需要用到通过“_id”去检查数据,筛选数据,但是想根据具体时间的id每次都需要做一下转换,这样搜索起来就很简单了. ObjectId转DateTime /// <sum ...
- python模块分析之time和datetime模块
前言 我们使用time和datetime模块的主要目的是对时间戳.时间字符串.时间元组等时间的表述对象进行相互的转化.而我们平时编码涉及两个时间:一个是上海时间,也可以说是北京时间,一个是UTC时间, ...
- Python标准库笔记(3) — datetime模块
datetime模块提供了简单和复杂的方式用于操纵日期和时间的类.虽然支持日期和时间运算,但实现的重点是为了输出格式化和操作高效地提取属性. 1. 模块内容 内容 描述 常量 datetime.M ...
随机推荐
- Python 中的赋值、拷贝、引用
在 python 中赋值语句总是建立对象的引用值,而不是复制对象.因此,python 变量更像是指针,而不是数据存储区域. 如图所示,当改变一个变量的值,另一个的值也会跟着改变.也就是浅拷贝. 若要实 ...
- elasticsearch 聚合查询
1. 按照 tags 字段 进行分组 GET /ecommerce/product/_search{ "size": 0, "aggs": { &quo ...
- 菜鸟眼中的”AppSettings和ConnectionStrings“
前言 这次的机房收费系统重构,我们用到了这个配置文件.瞬间感觉高大上了许多,对新鲜的事务就是又陌生又好奇,通过看静静的博客,还有自己查资料花了点时间弄了弄,下面是我整理的结果. 内容 是什么 AppS ...
- 清北刷题冲刺 11-03 p.m
三向城 #include<iostream> #include<cstdio> using namespace std; int n,x,y; int main(){ freo ...
- 2017-10-3 清北刷题冲刺班p.m
a [问题描述]你是能看到第一题的 friends 呢.——hja给你一个只有小括号和中括号和大括号的括号序列,问该序列是否合法.[输入格式]一行一个括号序列.[输出格式]如果合法,输出 OK,否则输 ...
- javascript数组常用的遍历方法
本篇文章给大家带来的内容是关于javascript数组常用的遍历方法(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 前言 本文主要介绍数组常见遍历方法:forEach.m ...
- angular中[hidden]="expression"注意事项
[hidden]="expression",右侧的表达式尽量使用布尔值:虽然比较运算符也可以达到效果,但时常会出现一些莫名其妙的错误.
- Codeforces Round #129 (Div. 2) A
Description The Little Elephant loves Ukraine very much. Most of all he loves town Rozdol (ukr. &quo ...
- CentOS 安装最新的 RabbitMQ 3.7.8
RabbitMQ依赖Erlang,Erlang又依赖很多包,安装非常麻烦,可以如下操作: RabbitMQ在github上有提供新的erlang包(https://github.com/rabbitm ...
- 配置HEXO
软件介绍 Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页. 使用版本和操作系统 官网最新版 Windo ...