为什么我的日期在c#中只设为2位数字澄清

为什么我的日期在c#中只设为2位数字澄清,c#,C#,正如我在上一个问题中所说,我仍在学习如何使用stackoverflow发布问题。我刚刚发现我可以加上一张图片——一张图片可以表达1000个单词。所以请原谅我重复了这个问题。正如您所看到的,在图像中,TDate显示了2位数的年份,我认为这是SqlServer的问题,因为它是作为json对象上传到SqlServer所在的webapi的。我相信sqlserver不会得到2013年,它会得到0013年——而且它会抱怨 以下是代码的图像: 像这样试试 TraxDate=Convert.ToDateTime

正如我在上一个问题中所说,我仍在学习如何使用stackoverflow发布问题。我刚刚发现我可以加上一张图片——一张图片可以表达1000个单词。所以请原谅我重复了这个问题。正如您所看到的,在图像中,TDate显示了2位数的年份,我认为这是SqlServer的问题,因为它是作为json对象上传到SqlServer所在的webapi的。我相信sqlserver不会得到2013年,它会得到0013年——而且它会抱怨

以下是代码的图像:

像这样试试

TraxDate=Convert.ToDateTime("09/25/2011").ToString("dd/MM/yyyy"); //returns 25/09/2011



TraxDate= t.tdate.ToString("dd/MM/yyyy"); //should return 25/09/2011 this format

我对TDate有一个问题,它是一个日期时间。在源代码中,出于测试目的,我设置TDate=newdatetime(2013,12,31)。然而,我看到的值是TDate={12/31/13..}。我当然希望看到{12/31/2013…}——我希望SqlServer不会抱怨datetime2字段的限制,因为我还有一个日期t.tdate。在调试器中,它显示得很好。我甚至还弄乱了这个文化对象——但这还是没用。我相信TDate在内部可能是2013年-但我也相信,当它被序列化到webapi时-只有13而不是2013年通过网络发送-bcos,一旦它到达webapi-它小于sqlserver DateTime2的限制我要感谢所有帮助过或试图帮助过的人。我非常感激。我将继续—采用另一种方法—我已经花了太多时间试图弄清楚这一点—这似乎是调试器中唯一的显示问题。存储在SQL中的实际日期时间更多地取决于存储记录时的格式。为什么不实际输出值以查看它是否是预期的结果?调试器上的值未格式化。