相关疑难解决方法(0)

在c#中的特定时区创建日期时间

我正在尝试创建一个单元测试来测试机器上时区变化的情况,因为它已被错误地设置然后更正.

在测试中,我需要能够在非本地时区创建DateTime对象,以确保运行测试的人员无论身在何处都能成功完成.

从我从DateTime构造函数中可以看到,我可以将TimeZone设置为本地时区,UTC时区或未指定.

如何使用PST等特定时区创建DateTime?

.net c# timezone datetime .net-3.5

139
推荐指数
4
解决办法
17万
查看次数

我应该将什么值传递给TimeZoneInfo.FindSystemTimeZoneById(String)?

我想使用该TimeZoneInfo.FindSystemTimeZoneById(String)方法,但我不知道使用什么值作为输入?

我在哪里可以获得id所需的值列表FindSystemTimeZoneById

.net c# timezone

81
推荐指数
5
解决办法
6万
查看次数

如何表示当前的英国时间?

我在服务器和客户端之间转换日期时遇到了问题,两者都在德国运行.客户端计算机上的区域设置可以设置为英国或德国.我从服务器接收CET格式的日期,我需要在UI上将此时间表示为英国时间.例如,从服务器收到的时间,例如01/07/2010 01:00:00应该在UI上表示为01/07/2010 00:00:00.我已经为此目的编写了一个转换器,但是在运行它时会产生2小时的时差.下面是代码,请帮忙吗?

public class LocalToGmtConverter : IDateConverter
{
    private readonly TimeZoneInfo timeZoneInfo;

    public LocalToGmtConverter()
        : this(TimeZoneInfo.Local)
    {

    }
    public LocalToGmtConverter(TimeZoneInfo timeZoneInfo)
    {
        this.timeZoneInfo = timeZoneInfo;
    }

    public DateTime Convert(DateTime localDate)
    {
        var utcKind = DateTime.SpecifyKind(localDate, DateTimeKind.Utc);
        return utcKind;
    }

    public DateTime ConvertBack(object fromServer)
    {
        DateTime serverDate = (DateTime)fromServer;

        var utcOffset = timeZoneInfo.GetUtcOffset(serverDate);

        var uiTime = serverDate- utcOffset;

        return uiTime;

    }
}
Run Code Online (Sandbox Code Playgroud)

c# datetime

9
推荐指数
1
解决办法
2万
查看次数

标签 统计

c# ×3

.net ×2

datetime ×2

timezone ×2

.net-3.5 ×1