Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我在本地系统中得到了正确的时间。但是在服务器i';我的约会时间不对_C#_Datetime - Fatal编程技术网

C# 我在本地系统中得到了正确的时间。但是在服务器i';我的约会时间不对

C# 我在本地系统中得到了正确的时间。但是在服务器i';我的约会时间不对,c#,datetime,C#,Datetime,我在远程服务器中获取的时间不正确。我在本地系统中获取的日期时间正确。我们的服务器可能在其他国家/地区,如何获取我在本地系统中获取的正确日期时间 当地申请日期时间-2018年5月23日06:40:20 部署到服务器后的时间-2018年5月23日09:10:20上午 时间戳-2018-05-23T10:56:12.730Z 获取输出 23/05/2018 09:10:20 AM 预期产量 23/05/2018 06:40:20 PM 代码 数据类型 public class onem2m {

我在远程服务器中获取的时间不正确。我在本地系统中获取的日期时间正确。我们的服务器可能在其他国家/地区,如何获取我在本地系统中获取的正确日期时间

当地申请日期时间-2018年5月23日06:40:20

部署到服务器后的时间-
2018年5月23日09:10:20上午

时间戳-2018-05-23T10:56:12.730Z

获取输出

23/05/2018 09:10:20 AM
预期产量

23/05/2018 06:40:20 PM
代码

数据类型

public class onem2m {
    public string dataFrame{ get; set; }
    public string time { get; set; }
}

尝试使用
SimpleDataFormat
类和

TimeZone.getTimeZone("IST")
像这样的

string time = con.PayloadsUl.Timestamp.ToString();
DateTime utcdate = DateTime.ParseExact(time, "M/dd/yyyy 
                                           h:mm:ss tt",CultureInfo.InvariantCulture);

    var istdate = TimeZoneInfo.ConvertTimeFromUtc(utcdate,
    TimeZoneInfo.FindSystemTimeZoneById("India Standard Time"));

当您显式地传递
dd
作为格式的开头时,为什么您希望输出以
MM
开头?我最不关心开头的MM,我在寻找正确的时间,但我没有得到什么
SimpleDateFormat
/
时区
类?这在.NET Framework上是不存在的。@Camilo似乎是一个C#问题的java答案:-(@john我想象过,但我对Java的了解还不够,无法指出,即使这是Java,也强烈反对使用
SimpleDateFormat
类,因为该类早已过时,而且出了名的麻烦。而且,你永远不应该依赖IST这样的三个字母的时区缩写。你无法知道Java是否会给你带来爱尔兰夏季Time、以色列标准时间或印度标准时间。字符串未被识别为有效的日期时间。我的时间值-23/05/2018 12:20:57+00:00
string time = con.PayloadsUl.Timestamp.ToString();
DateTime utcdate = DateTime.ParseExact(time, "M/dd/yyyy 
                                           h:mm:ss tt",CultureInfo.InvariantCulture);

    var istdate = TimeZoneInfo.ConvertTimeFromUtc(utcdate,
    TimeZoneInfo.FindSystemTimeZoneById("India Standard Time"));