返回上一个循环

本文关键字:循环 上一个 返回 | 更新日期: 2023-09-27 17:57:41

如何返回另一个循环?

 for (int index = MIN_DIAGNOSIS; index <= MAX_DIAGNOSIS; index++) 
   {
       foreach (RepeaterItem ri1 in GeneralRepeater.Items)
       {
           int iItemIndex = ri1.ItemIndex;
           var myDDL = GeneralRepeater.Items[iItemIndex].FindControl("derp");
           MyPoc.Diagnoses.Diagnoses[index] = new PatientDiagnosis(/*snip*/);
           return index; 
           //error 'PatientPlanOfCare.cmdSave_Click(object, System.EventArgs)' 
           //returns void, a return keyword must not be followed by 
           //an object expression
      }
    }
    break;

返回上一个循环

只需中断内部循环并在主循环中使用所需的变量。

for (int index = PocDiagnoses.MIN_DIAGNOSIS; index <= PocDiagnoses.MAX_DIAGNOSIS; index++) 
{
    foreach (RepeaterItem ri1 in GeneralRepeater.Items)
    {
        int iItemIndex = ri1.ItemIndex;
        DropDownList myDDL = (DropDownList)GeneralRepeater.Items[iItemIndex].FindControl("GeneralDDL");
        MyPoc.Diagnoses.Diagnoses[index] = new PatientDiagnosis(myDDL.SelectedValue, new SynergyOnSetDate(new System.DateTime(Year, Month, Day)), "01/02/2011");
        break;
    }
    // Check the index variable here.
}

就像评论中的内容一样,很难判断你想做什么。根据您评论中的错误消息,此代码是在返回void的方法中执行的,这意味着您的return语句后面不应该有index