Foreach duplicando dados

02/02/2015

0

Possuo 2 foreachs, para fazer uma busca de datas em ViewBags, onde eu retorno ambos em um select. Porém para cada item do primeiro foreach, ele faz um loop completo no segundo, assim duplicando os valores, por cada item do primeiro. Ex: Caso eu tenha 3 itens no primeiro foreach e 2 itens no segundo, meu resultado final será de 6 itens no meu select, sendo que ele repete dos dados, após o loo´dp primeiro. Meu problema é: Como fazer para não repetir esses dados?

Meus Foreahcs na view:

<div class="col-md-9">
                        <select class="form-control" style="width:250px" id="selectPeriodo" name="sAquisitivo">
                            @foreach (var date in ViewBag.Ferias)
                            {
                                foreach (var fim in ViewBag.FimFerias)
                                {
                                    <option>
                                        @Convert.ToDateTime(date).ToShortDateString() à @Convert.ToDateTime(fim).ToShortDateString()
                                    </option>
                                }
                            }
                        </select>
                    </div>


Minhas ViewBags:
 ViewBag.Ferias = funcionarioFeriasRepository.Lista.Where(r => r.CdMatricula == matricula && r.SqContrato == contrato && r.DtInicioConcessao == null)
            .Select(x => x.DtInicioPeriodo).ToList();
            ViewBag.FimFerias = funcionarioFeriasRepository.Lista.Where(r => r.CdMatricula == matricula && r.SqContrato == contrato && r.DtInicioConcessao == null)
            .Select(x => x.DtFimPeriodo).ToList();


Model:
[DataType(DataType.Date)]
        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        public DateTime? dtInicioFerias { get; set; }

        [DataType(DataType.Date)]
        [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
        public DateTime? dtFimFerias { get; set; }

        public string sAquisitivo { get; set; }


Resultado Atual:
[img]http://arquivo.devmedia.com.br/forum/imagem/397347-20150202-111246.png[/img]
Randrade

Randrade

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar