C# 如何转换字符串";年月日HH:mm:SS“;至;HH:MM";在线测试持续时间?
代码:-C# 如何转换字符串";年月日HH:mm:SS“;至;HH:MM";在线测试持续时间?,c#,datetime,model-view-controller,C#,Datetime,Model View Controller,代码:- public string TestDuration { get; set; } TestDuration =DateTime.Parse(dr.TestDuration.ToString()).ToShortTimeString() ; 我有一个字符串格式dd/mm/yyyy HH:mm:SS am/pm,它在我的视图中显示日期和时间,我需要以HH:mm格式显示在线测试持续时间的小时和分钟 示例:testduration=2小时或2:30分钟 我有一个DateTime类型的字符串
public string TestDuration { get; set; }
TestDuration =DateTime.Parse(dr.TestDuration.ToString()).ToShortTimeString() ;
我有一个字符串格式dd/mm/yyyy HH:mm:SS am/pm
,它在我的视图中显示日期和时间,我需要以HH:mm
格式显示在线测试持续时间的小时和分钟
示例:testduration=2小时或2:30分钟
我有一个DateTime类型的字符串
那是不可能的。您可以使用字符串
或日期时间
。您的变量类型不能同时为这两种类型
您可以使用HH:mm
格式设置您的DateTime
,如下所示:
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);
dr.TestDuration
的类型和值是什么?那么dr.TestDuration
的类型是什么?所有这些从字符串到字符串的转换对我来说似乎是个坏主意。类型dr.TestDuration
是字符串,我想将其转换为在线测试的持续时间,你能告诉我如何转换吗@Artiom@Noor更新了我的答案,看一看。那么你的代码有什么问题?您面临的问题是什么?上面的答案现在对我很有效,但我想要的是我需要从开始时间到结束时间更改数据库中的字段,然后计算在线测试的时间。。谢谢你抽出时间@索内尔戈努尔