【问题标题】:display only the date and not the time in c# from sql [duplicate]仅显示日期而不是来自sql的c#中的时间[重复]
【发布时间】:2017-10-18 15:39:35
【问题描述】:

您好,我的 .cs 文件中有此代码,输出为 5/27/2017 12:00:00 AM,但我希望它仅格式化 2017 年 5 月 27 日这样的日期。这是我在标签中显示值的代码。如果我在 ToString("dd/MM/yyyy") 中添加任何参数,它会告诉我方法 'ToString' 没有重载需要 '1' 参数。

 Date.Text = ds.Tables[0].Rows[0]["AUM"].ToString();

【问题讨论】:

  • ds.Tables[0].Rows[0]["AUM"] 实际上是 DateTime 对象吗?如果是这样,请查看ToShortTimeString

标签: c# asp.net datetime


【解决方案1】:

如果您的数据是日期时间:

Date.Text = ds.Tables[0].Rows[0]["AUM"].ToShortDateString();

如果你的数据是字符串:

Date.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["AUM"]).ToShortDateString();

【讨论】:

    【解决方案2】:

    先转换到日期时间

    Date.Text = ((DateTime)ds.Tables[0].Rows[0]["AUM"]).ToString("dd/MM/yyyy");
    

    【讨论】:

    • 漂亮!它有效!!!
    • 请把答案标记为正确。谢谢!
    • 有更好的选择,如stackoverflow.com/questions/7124434/… 所示。这确实是“对我的帖子提供了最多半答案的帮助”,应该将其标记为“答案”,但要获得真正的答案,请查看链接的副本。
    • 我同意它看起来像同一个问题(标题),但答案中的内容不同,该帖子中的答案对我没有帮助。
    • 如果字段AUM的sql数据类型是日期时间,那么Row在该列中有一个C# DateTime,但是值是一个Object。您必须先将其转换为 DateTime。然后.. DateTime 有一个 ToString("format") 方法
    【解决方案3】:

    当您不了解它们的参数如何工作时,您需要查找这些方法。 https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx

    也就是说,如果您仍然要提取 DateTime 值,您可以:

    Date.Text = Convert.ToDateTime(ds.Tables[0].Rows[0]["AUM"]).ToShortDateString();

    【讨论】:

      猜你喜欢
      • 2021-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多