草庐IT

RobotFramework之DateTime

全部标签

c# - .net DateTime MaxValue 一旦存储在数据库中就不同了

当我在数据库中存储值为DateTime.MaxValue的日期属性并将其取回时,存储的值不等于DateTime.MaxValue。刻度属性已关闭。为什么是这样?使用MSSQL,日期字段的数据类型是'datetime' 最佳答案 因为SQL日期时间的分辨率较低。TheDateTimedatatypeinMSSQLrepresentsDateandtimedatafromJanuary1,1753,toDecember31,9999,withanaccuracyofonethree-hundredthsecond,or3.33milli

c# - 是否有可用于 CLR 的高分辨率(微秒、纳秒)DateTime 对象?

我有一个仪器可以存储微秒级别的时间戳,我需要存储这些时间戳作为从仪器收集信息的一部分。请注意,我不需要需要generatetimestamps;这些时间戳由仪器本身使用高分辨率实时操作系统预先生成。解析这些值不是问题——它们以UTC时间使用标准格式存储。本来我想用C#DateTimestructure只能存储毫秒分辨率的时间戳。.NET或通用C#库是否提供了另一个支持微秒和(理想情况下)纳秒级分辨率时间戳的对象,还是我必须自己动手? 最佳答案 毕竟您可以使用DateTime。DateTime.Ticks的分辨率为100纳秒。您可以使

c# - 如何在 C# (.NET) 中将 DateTimeKind.Unspecified 类型的 DateTime 转换为 DateTime.Kind.Utc

我继承了C#代码,其中包含大量DateTimes,其中Kind属性为DateTimeKind.Unspecified。这些被送入Datetime.ToUniversalTime()返回一个UTC日期时间(在我的例子中它增加了7小时)。这就是ToUniversalTime()的工作原理;请参阅MSDN。问题是这些日期时间实际上已经是UTC时间了。它们是从SQLServerCompact4.0数据库中提取出来的。它们以UTC存储在那里。我的主要问题是:如何修改DateTime的Kind属性以使其为UTC而不是未指定的?我不想更改时间或日期。因此,例如,日期2013年4月1日上午9:05,其

c# - DateTime.Now 的更新频率是多少?或者是否有更精确的 API 来获取当前时间?

我有一个循环运行的代码,它根据当前时间保存状态。有时这可能仅相隔几毫秒,但出于某种原因,似乎DateTime.Now将始终返回相隔至少10毫秒的值,即使它仅晚2或3毫秒。这提出了一个主要问题,因为我正在保存的状态取决于它被保存的时间(例如记录一些东西)我的测试代码以10毫秒的间隔返回每个值:publicstaticvoidMain(){vardt1=DateTime.Now;System.Threading.Thread.Sleep(2);vardt2=DateTime.Now;//Onmymachinethevalueswillbeatleast10msapartConsole.Wr

c# - DateTime.UtcNow 和 DateTime.Now.ToUniversalTime() 之间有什么区别

对我来说,它们是一样的。UtcNow只是一个捷径吗? 最佳答案 其实恰恰相反。Now属性实现为:publicstaticDateTimeNow{get{returnUtcNow.ToLocalTime();}} 关于c#-DateTime.UtcNow和DateTime.Now.ToUniversalTime()之间有什么区别,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/360

c# - 通过查询字符串传递 C# DateTime

我有一个C#DateTime对象。该对象包括日期和时间。我需要将此信息传递给基于REST的服务。我的问题是,如何格式化DateTime,以便我可以通过查询字符串传递它,并在服务器端将它解析回DateTime?DateTimestartDate=GetStartDate();stringurl="http://www.mydomain.com/myservice.svc/[startDateGoesHere]WebRequestrequest=HttpWebRequest.Create(url);request.BeginGetResponse(newAsyncCallback(Serv

c# - DateTime.Now 和文化/时区特定

我们的应用程序旨在处理来自不同地理位置的用户。Weareunabletodetectwhatisthecurrentenduserlocaltimeandtimezoneoperateonit.Theyselectdifferentculturelikesv-se,en-us,ta-IneventheyaccessfromEurope/Londontimezone..我们将其托管在美国的托管服务器上,应用程序用户来自挪威/丹麦/瑞典/英国/美国/印度问题是我们使用DateTime.Now来存储记录创建/更新日期等。由于服务器在美国运行,所有用户数据都保存为美国时间:(在对SO进行研究之

C# - 为什么 DateTime.MinValue 和 MaxValue 不是编译时常量?

我想为一个方法设置一个可选的日期参数(默认为MinValue),以便检查用户是否实际提供了一个值(提供MinValue无效),但显然我不允许这样做不是编译时常量。根据theMSDNpage,"这个常量的值等于00:00:00.0000000,January1,0001."那么为什么它不是编译时常量呢?为什么它与传入Int32.MinValue不同,这是允许的? 最佳答案 您不能定义DateTime常量(或结构)。来自MSDN的const允许类型是:Oneofthetypes:byte,char,short,int,long,floa

c# - 日历 System.Globalization.GregorianCalendar 不支持字符串表示的 DateTime

我只是想将出生日期保存到SQL数据库中,但每次出现新异常时,数据库字段类型都是日期时间。这是我的代码usinfo.BirthDate=DateTime.ParseExact(txtDOB.Text.ToString(),"MM/dd/yyyy",CultureInfo.InvariantCulture); 最佳答案 问题:您首先使用MM/dd/yyyy解析Month,但是你要像这样先给出date31/04/2012解决方案:您需要使用dd/MM/yyyy格式。试试这个:usinfo.BirthDate=DateTime.ParseE

c# - 如何使用 C# 中的指定容差比较 DateTime 对象?

默认情况下,C#将DateTime对象与100ns节拍进行比较。但是,我的数据库将DateTime值返回到最接近的毫秒。使用指定容差在C#中比较两个DateTime对象的最佳方法是什么?编辑:我正在处理截断问题,而不是舍入问题。正如乔在下面指出的那样,四舍五入的问题会引入新的问题。对我有用的解决方案是以下解决方案的组合。(dateTime1-dateTime2).Duration()如果差异小于一毫秒,则返回true。为了获得两个日期之间的差异的绝对值,调用Duration()很重要。 最佳答案 我通常使用TimeSpan.From