gpt4 book ai didi

c# - 为什么 date.ToString() 随时间显示

转载 作者:行者123 更新时间:2023-11-30 13:46:59 25 4
gpt4 key购买 nike

我的 sql-server 数据库中有一个数据类型为 date 的列,我将其插入到 1999-12-23 中。当我在我的数据库中运行选择查询时,日期显示为 1999-12-23 但是当我将数据库连接到我的 c# winform 应用程序并检索它显示为 1999-12 的日期时-23 00:00:00(即显示日期和时间)。

这些是我使用的代码

创建表

CREATE TABLE Users.Personal
(
/*...Other Codes for the table this is the main problem*/
DateofReg date NOT NULL
)

选择查询

SELECT * FROM Users.Personal

(这会将日期显示为 1999-12-23)

连接到数据库

private void RetrievePersonalDetails()
{
SqlConnection myConnection = new SqlConnection("server=AMESINLOLA;" +
"Trusted_Connection=yes;" +
"database=Crm_Db;");
myConnection.Open();

SqlCommand myCommand = myConnection.CreateCommand();
myCommand.CommandText = "SELECT * FROM Users.Personal WHERE UniqueID='" + uniqueid + "'";
myCommand.CommandType = CommandType.Text;

SqlDataReader myReader = myCommand.ExecuteReader();

if (myReader.Read())
{
//Other codes inserting to textbox but this is the main problem
txtDor.Text = myReader["DateofReg"].ToString();
}
else
{
MessageBox.Show("Empty");
}
myConnection.Close();
myReader.Close();
}

(这会将日期显示为 1999-12-23 00:00:00)

为什么日期在应用程序中随时间显示,但在数据库中却显示良好,如何才能只显示日期?

最佳答案

myReader["DateofRef"] 似乎返回一个 DateTime 对象。这会在内部存储您的日期值的刻度(包括时间和毫秒等)。

ToString 为您的 DateTime 对象应用默认格式。

你也可以使用 DateTime.Now.ToShortDateString() 将只打印年、月和日。

尽管格式将取决于当前的文化 (Thread.CurrentThread.CurrentCulture),ToStrin 也接受一个名为 IFormatProvider 的参数,这可以设置为您想要使用 CultureInfo...

指定日期字符串的外观的任何文化

您可以通过将格式传递给 ToString 方法来更改格式。

这里可以找到很多例子http://msdn.microsoft.com/en-US/library/zdtaw1bw(v=vs.110).aspx

关于c# - 为什么 date.ToString() 随时间显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19083308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com