Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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# 列表项中的AddHour/AddMinute存储_C#_List_While Loop - Fatal编程技术网

C# 列表项中的AddHour/AddMinute存储

C# 列表项中的AddHour/AddMinute存储,c#,list,while-loop,C#,List,While Loop,我正在使用c#net 我曾两次从数据库中提取(“最早开始时间”和“最晚结束时间”) 我想循环并将“中间”时间添加到列表中 范例 while (DateTime.Today.AddHours(firstTimeHour).AddMinutes(firstTimeMintues, i * 30).Hour < lastTime) { appointmentTimes.Add(DateTime.Today.AddHours(7).AddMinutes(30*(++i)); ); } 最早开始

我正在使用c#net

我曾两次从数据库中提取(“最早开始时间”和“最晚结束时间”)

我想循环并将“中间”时间添加到列表中

范例

while (DateTime.Today.AddHours(firstTimeHour).AddMinutes(firstTimeMintues, i * 30).Hour < lastTime)
{
appointmentTimes.Add(DateTime.Today.AddHours(7).AddMinutes(30*(++i)); );
}
  • 最早开始时间–12:00
  • 12:30
  • 13:00
  • 13:30
  • 14:00
  • 14:30
  • 最晚结束时间–15:00
我发现了一些代码,但由于信息是从数据库中提取的,所以开始时间可能是12:00/12:30等。我不知道如何调整下面的代码,使其同时满足这两个时间(整小时/半小时)的要求

inti=-1;
List AppointTimes=新列表();
while(DateTime.Today.AddHours(firstTime).AddMinutes(i*30).Hour
我需要把第一次的时间分成小时/分钟吗

范例

while (DateTime.Today.AddHours(firstTimeHour).AddMinutes(firstTimeMintues, i * 30).Hour < lastTime)
{
appointmentTimes.Add(DateTime.Today.AddHours(7).AddMinutes(30*(++i)); );
}
while(DateTime.Today.AddHours(firstTimeHour).AddMinutes(firstTimeMintues,i*30).Hour
提前感谢您的帮助


克莱尔

对不起,这只是一个提示,而不是一个答案,但使用TimeSpan循环查看可用时间可能会更容易


使用TimeSpan.FromHours和TimeSpan.FromMinutes获得TimeSpan,然后将其增量30添加到列表中,类似于使用TimeSpan.Hours和TimeSpan.Minutes所做的操作。

感谢Justin让我走上正轨

            // ---- Create a new list
            List<string> appointmentTimes = new List<string>();

            // ---- If information is pulled back
            if (myResults != null)
            {
                TimeSpan time = TimeSpan.FromMinutes(30);

                DateTime FirstTime = Convert.ToDateTime(myResult.firstStart);
                DateTime LatestTime = Convert.ToDateTime(myResult.lastEnd);

                while (FirstTime < LatestTime )
                {
                    appTimes.Add(FirstTime .ToString());
                    FirstTime += time;
                }
            }
/----创建一个新列表
List AppointTimes=新列表();
//----如果信息被撤回
if(myResults!=null)
{
TimeSpan时间=TimeSpan.FromMinutes(30);
DateTime FirstTime=Convert.ToDateTime(myResult.firstStart);
DateTime LatestTime=Convert.ToDateTime(myResult.lastEnd);
while(第一次<最后一次)
{
Add(FirstTime.ToString());
第一次+=时间;
}
}