将C#中的日期时间转换为yyyy-MM-dd格式并存储到MySql日期时间字段

mitkmikd  于 2023-01-16  发布在  Mysql
关注(0)|答案(8)|浏览(90)

我正在尝试将DateTime转换为yyyy-MM-dd并将其存储到DateTime对象。但它给了我系统DateTime,即MM/dd/yyyy
我使用下面的代码转换。

string dateTime = DateTime.Now.ToString();
string createddate = Convert.ToDateTime(dateTime).ToString("yyyy-MM-dd h:mm tt");         
DateTime dt = DateTime.ParseExact(createddate, "yyyy-MM-dd h:mm tt",CultureInfo.InvariantCulture);

但是上面的行都没有转换成指定的格式。
有谁能帮助解决这个问题。
我从一个应用程序获取DateTime并将此对象传递给另一个应用程序,该应用程序将该日期存储到MySql的DateTime字段中,格式为“yyyy-MM-dd”。
这就是为什么我贴出这个问题。
项目1具有从中获取日期的类和处理器类,处理器类是应用程序的中间件,它处理DateTime格式以转换为特定格式,并传递给使用DateTime并将其存储在MySql字段中的其他项目。

8dtrkrch

8dtrkrch1#

使用DateTime.Now.ToString("yyyy-MM-dd h:mm tt");。请参见this

ecr0jaav

ecr0jaav2#

我们可以使用下面的它非常简单。

Date.ToString("yyyy-MM-dd");
vjrehmav

vjrehmav3#

你试过吗?

var isoDateTimeFormat = CultureInfo.InvariantCulture.DateTimeFormat;

// "2013-10-10T22:10:00"
 dateValue.ToString(isoDateTimeFormat.SortableDateTimePattern); 

// "2013-10-10 22:10:00Z"    
dateValue.ToString(isoDateTimeFormat.UniversalSortableDateTimePattern)

在mySql数据库中存储c# datetime值时,也可以尝试使用参数,这可能会有所帮助。

p3rjfoxz

p3rjfoxz4#

请尝试为CurrentCulture和CurrentUICulture设置自定义CultureInfo。

Globalization.CultureInfo customCulture = new Globalization.CultureInfo("en-US", true);

customCulture.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd h:mm tt";

System.Threading.Thread.CurrentThread.CurrentCulture = customCulture;
System.Threading.Thread.CurrentThread.CurrentUICulture = customCulture;

DateTime newDate = System.Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd h:mm tt"));
vuktfyat

vuktfyat5#

我知道这是一个老主题,但是对于所有的新手来说,有一个新的简化语法(Intellisense为我强调了它,不确定这个特性有多新,但是我猜是.NET 5.0)

DateTime date = DateTime.Now;
string createdDate = $"{date:yyyy-MM-dd}";

Maybe在这个例子中看起来并不简单,但是当连接一条长消息时,它真的很方便。

bq9c1y66

bq9c1y666#

GetDateTimeFormats可以将DateTime解析为不同的格式。例如“yyyy-MM-dd”格式。

SomeDate.Value.GetDateTimeFormats()[5]

GetDateTimeFormats

csga3l58

csga3l587#

试试这个!

DateTime dt = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Ticks)
iqxoj9l9

iqxoj9l98#

文化不变的方式,最佳实践:

DateTime.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture)

相关问题