public static ComponenteViewModel From(IComponente componente) { var viewModel = new ComponenteViewModel { Id = componente.Id, Nome = componente.Nome, ComponentePaiId = (componente.ComponentePai == null ? new int?() : componente.ComponentePai.Id), ComponentePaiNome = (componente.ComponentePai == null ? null : componente.ComponentePai.Nome), UnidadePadraoSigla = componente.UnidadePadrao.Sigla, }; return(viewModel); }
public static IObservable <ComponentesBindingList> ParaDropdown(this IConsultaDeComponentes consultaDeComponentes) { var observable = consultaDeComponentes.ObtemObservavelDeComponentes() .Select(componentes => { var list = componentes.Select(p => ComponenteViewModel.From(p)).ToList(); list.Add(new ComponenteViewModel { Id = 0, Nome = "Selecione" }); var bindingList = new ComponentesBindingList(list); return(Observable.Return(bindingList)); }) .Switch(); return(observable); }