代码: -
public string TestDuration { get; set; }
TestDuration =DateTime.Parse(dr.TestDuration.ToString()).ToShortTimeString() ;
我有一个格式为dd/mm/yyyy HH:MM:SS am/pm
的字符串,它在我的视图中显示日期和时间,我需要格式为hh:mm
的在线测试时间的小时和分钟。
示例:testduration= 2hr or 2:30 mins
答案 0 :(得分:2)
我有一个DateTime
类型的字符串
不可能。您有string
或DateTime
。你的变量类型不能都是。
您可以使用DateTime
格式设置HH:mm
格式,例如;
var result = DateTime.Parse(dr.TestDuration.ToString())
.ToString("hh:mm", CultureInfo.InvariantCulture);
您没有提到它,但另一方面,您的dr.TestDuration
已经可能是DateTime
。您可能想要格式化此值而不是生成它的字符串表示形式,将其解析为DateTime并再次生成它的字符串表示。
var result = dr.TestDuration.ToString("hh:mm", CultureInfo.InvariantCulture);
由于您的TestDuration
字符串格式为"dd/MM/yyyy HH:mm:ss tt"
,因此您需要将其解析为DateTime
并生成hh:mm
格式的字符串表示形式。
TestDuration = DateTime.ParseExact(dr.TestDuration, "dd/MM/yyyy HH:mm:ss tt",
CultureInfo.InvariantCulture)
.ToString("hh:mm", CultureInfo.InvariantCulture);