2015-06-25 2 views
-4

У меня проблема при попытке использовать переменные внутри коммутатора. Они являются переменными, которые назначены «за пределами» (переключатель), и когда я прохожу их в качестве параметров она бросает феллинг ошибки «Использование незанятых переменный»»Использование переменных внутри оператора switch throw и ошибки компилятора

DateTime startDate, endDate; 
       switch (int.Parse(cmbRepor.SelectedValue.ToString())) 
       { 
        case 1: 
         startDate = new DateTime(anio, 1, 1); 
         endDate = new DateTime(anio, 3, 31); 
         break; 
        case 2:   
         startDate = new DateTime(anio, 4, 1); 
         endDate = new DateTime(anio, 6, 30); 
         break; 
        case 3: 
         startDate = new DateTime(anio, 7, 1); 
         endDate = new DateTime(anio, 9, 30); 
         break; 
        case 4: 
         startDate = new DateTime(anio, 10, 1); 
         endDate = new DateTime(anio, 12, 31); 
         break; 
        default: 
         break; 
       } 

     ReporteLogica logica = new ReporteLogica(); 

      switch (int.Parse(cmbRepor.SelectedValue.ToString())) 
      { 
       case 1: 
        dgvListado.DataSource = logica.GetReporteClientesCuentasInhabilitadas(startDate, endDate); 
        break; 
       case 2: 
        dgvListado.DataSource = logica.GetReporteClientesCuentasInhabilitadas(startDate, endDate); 
        break; 
       case 3: 
        dgvListado.DataSource = logica.GetReporteClientesCuentasInhabilitadas(startDate, endDate); 
        break; 
       case 4: 
        dgvListado.DataSource = logica.GetReporteClientesCuentasInhabilitadas(startDate, endDate); 
        break; 
       default: 
        break; 
      } 
+1

@MauricioGracia - перевод это не единственная проблема, я бы себе ответы нужно будет переводить слишком – Sayse

+0

@Sayse желает взаимодействовать с OP и переводить данные ответы, а также –

+1

@MauricioGracia - Thats много усилий с вашей стороны, но идти вперед. Помимо этого, эта ошибка является той, которую я бы себе представлял, просто на google'd на любом языке и не показал исследовательских усилий. – Sayse

ответ

1

Проблема заключается в том, что вы не присвоить значение в случае вашего коммутатора по умолчанию. Итак, каково должно быть значение, если ни одно из условий не подходит? Он остается неинициализированным, компилятор не знает, возможно ли это из-за каких-либо ограничений, которые вы сделали в своей программе во время выполнения. Defualt значение для вашей даты:

DateTime startDate = DateTime.Now, endDate = DateTime.Now; 
Смежные вопросы