Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何转换字符串";年月日HH:mm:SS“;至;HH:MM";在线测试持续时间?_C#_Datetime_Model View Controller - Fatal编程技术网

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更新了我的答案,看一看。那么你的代码有什么问题?您面临的问题是什么?上面的答案现在对我很有效,但我想要的是我需要从开始时间到结束时间更改数据库中的字段,然后计算在线测试的时间。。谢谢你抽出时间@索内尔戈努尔