草庐IT

datetime-format

全部标签

c# - SQL - 将 NULL 插入 DateTime

我有一个表,我在其中将Datetime添加到某些列中。我使用存储过程将值插入表中。在存储过程中,我有一些变量接受null以插入到表中。我的问题是,当我尝试向表列中插入一个空值时,我在该列中得到了1900-01-01。我该怎么做而不是这个默认值在列中仅插入NULL??这是我的SP:CREATEPROCEDUREdbo.Insert@InserIDint,@InsertDateDatetime=null,ASInsertintoTables(InsertID,InsertDate)Values(@InsertID,@InsertDate)我这样做是为了分配一个空值:System.Data.

c# - DateTime.TryParseExact 未按预期工作

谁能解释为什么下面的代码片段返回true?根据The"d"customformatspecifier的文档,"个位数的日期格式不带前导零。"那么,当我给它一个带前导零的个位数日时,为什么TryParseExact不会失败?DateTimex;returnDateTime.TryParseExact("01/01/2001",@"d\/MM\/yyyy",null,System.Globalization.DateTimeStyles.None,outx);更新我想也许我本来就不清楚。我真正想要了解的是:为什么TryParseExact接受一些不完全匹配的值?从我看到的所有文档中,'d'

c# - DateTime 通过内部刻度进行比较?

我查看了DateTimeEquals的实现:publicboolEquals(DateTimevalue){return(this.InternalTicks==value.InternalTicks);}然后看internalticksinternallongInternalTicks{[TargetedPatchingOptOut("PerformancecriticaltoinlineacrossNGenimageboundaries")]get{return(((long)this.dateData)&0x3fffffffffffffffL);}}然后我注意到这个数字:0x3f

c# - String.Format 计算预期参数的数量

是否可以计算String.Format()字符串中预期参数/参数的数量?例如:“你好{0}。再见{1}”应该返回计数2。我需要在string.Format()抛出异常之前显示错误。感谢您的帮助。 最佳答案 您可以使用正则表达式,例如{(.*?)}然后只计算匹配项。如果您需要处理{0}{0}之类的情况(我想应该返回1),那么这会变得有点困难,但是您总是可以将所有匹配项放在一个列表中,然后在其上执行Linqselectdistinct.我在想类似下面的代码:varinput="{0}and{1}and{0}and{2:MM-dd-yyy

c# - 我可以通过在 C# 中通过引用传递 DateTime 参数来减少内存分配吗?

在C#中,与按值传递相比,将DateTime引用作为参数传递给函数时,内存分配是否有显着减少?intGetDayNumber(refDateTimedate)对比intGetDayNumber(DateTimedate)函数内的代码在任何情况下都不会修改日期。 最佳答案 DateTime是一个8字节的结构。ref有4或8个字节,具体取决于您的目标架构。所以最多只能节省4个字节的堆栈内存,这是完全不相关的。甚至有可能ref阻止了一些优化,例如将DateTime放在寄存器中,从而实际上增加了内存使用。这是一个明显的过早优化案例。不要这样

c# - "The format of the URI could not be determined"与 WebRequest

我正在尝试使用C#中的WebRequest对站点执行POST。我发布到的站点是一个SMS站点,消息文本是URL的一部分。为了避免URL中出现空格,我调用HttpUtility.Encode()对其进行URL编码。但我不断收到URIFormatException-“无效的URI:无法确定URI的格式”-当我使用类似于此的代码时:stringurl="http://www.stackoverflow.com?question=asentencewithspaces";stringencoded=HttpUtility.UrlEncode(url);WebRequestr=WebReques

c# - 如何为 string.Format 设置命名参数?

调用时出现C#错误:string.Format(format:"abbccc",1,22);错误是“命名参数规范必须在指定所有固定参数后出现”我该如何解决这个问题?[编辑]我更喜欢使用命名参数。 最佳答案 如果要指定格式参数的名称,还必须指定以下参数的名称:string.Format(format:"abbccc",arg0:1,arg1:22);这不是很有用,因为名称“arg0”和“arg1”根本没有说明参数。另外,只有到“arg2”的重载,所以如果你有更多的参数,你必须把它们放在一个数组中来命名参数:string.Format(

c# - 使用 JSON.NET 反序列化 DateTime 时如何保留时区?

这个问题在这里已经有了答案:ParseDateTimewithtimezoneofformPST/CEST/UTC/etc(6个答案)关闭8年前。我正在使用JSON.NET在C#中解析一些JSON。JSON中的字段之一是日期/时间,如下所示:{"theTime":"2014-11-20T07:15:11-0500",//...alotmorefields...}请注意时间部分是07:15:11(GMT-5小时的TZ)我从这样的流中解析JSON:using(varstreamReader=newStreamReader(rcvdStream)){JsonTextReaderreader=

c# - 使用 DateTime.MinValue 还是可以为 null 的 DateTime 更好?

如果我在名为“TimeLastAccessed”的类上有一个DateTime,那么这个DateTime是否可以为null更有意义:publicDateTime?TimeLastAccessed{get;set}if(TimeLastAccessed==null)//...handleit表明它从未被访问过或检查DateTime.MinValuepublicDateTimeTimeLastAccessed{get;set;}if(TimeLastAccessed==DateTime.MinValue)//...handleit? 最佳答案

c# - 为什么我不能将 DateTime[] 转换为 object[]?

看来我可以将DateTime转换为object,那么为什么我不能将数组DateTime[]转换为object[]?我知道这与值/引用类型有关,但装箱不允许我这样做吗? 最佳答案 Arraycovariance仅适用于引用类型的数组。DateTime是一种值类型,因此您不能将DateTime[]分配给object[]变量。您必须显式创建一个对象数组并将值复制过来。换句话说,创建一个类型为object[]的新数组实例。有很多方法可以做到这一点。CopyTo()的简单使用应该足够了。DateTime[]x=newDateTime[]{..