Results 1 to 2 of 2

Thread: [RESOLVED] setting SelectListitem from List

  1. #1

    Thread Starter
    Fanatic Member
    Join Date
    Feb 2000
    Location
    Dunmow,Essex,England
    Posts
    898

    Resolved [RESOLVED] setting SelectListitem from List

    Hi All,

    I have the following declared on my viewModel and it is used to render a dropdown.

    Code:
     [DisplayName("Area")]
     public IEnumerable<SelectListItem> Areas { get; set; }
    I pass the model into my controller and return a list of AreaTypes:

    Code:
     public void GetTradeAllRisksLookupType(TradeAllRisksRiskViewModel viewModel)
            {
                List<AreaType> risks = _gridLookupRepository.All<AreaType>();
    
                IEnumerable<SelectListItem> tt = risks.AsEnumerable().OfType<SelectListItem>();
    
                viewModel.Areas = tt;
            }
    my risks item contain 5 elements as I expect. My problem is setting that to the SelectListItem. tt is always empty. can anyone tell me what I'm doing wrong.

    THanks

  2. #2

    Thread Starter
    Fanatic Member
    Join Date
    Feb 2000
    Location
    Dunmow,Essex,England
    Posts
    898

    Re: setting SelectListitem from List

    Ok, I've managed to resolve it.

    My viewModel becomes:

    Code:
    [DisplayName("Area")]
            public IEnumerable<AreaType> Areas { get; set; }
    
            #endregion View Model Lookup Properties
    
            #region Complex Types
    
            public class AreaType
            {
                [ScaffoldColumn(true)]
                public int Value { get; set; }
                public string Text { get; set; }
            }
    
            #endregion
    and I populate with:

    Code:
    public void GetTradeAllRisksLookupType(TradeAllRisksRiskViewModel viewModel)
            {
                List<AreaType> risks = _gridLookupRepository.All<AreaType>();
    
                IEnumerable<TradeAllRisksRiskViewModel.AreaType> areaFlatData = risks.Select(x => new TradeAllRisksRiskViewModel.AreaType
                {
                    Text = x.UIText,
                    Value = x.Id
                });
    
                viewModel.Areas = areaFlatData;
           
            }

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width