protected override void DoStart() { _parameterMetaDataList = _flatParameterMetaDataRepository.All().ToList(); foreach (var parameterMetaData in _parameterMetaDataList) { parameterMetaData.ParentContainerPath = _flatContainerRepository.ContainerPathFrom(parameterMetaData.ContainerId).ToString(); } //now cache the _parameter values foreach (var parameterValueMetaDataGroup in _parameterMetaDataList.GroupBy(x => x.ParentContainerPath)) { _parameterMetaDataCache.Add(parameterValueMetaDataGroup.Key, new List <TParameterMetaData>(parameterValueMetaDataGroup)); } }
protected override void DoStart() { _parameterMetaDataList = _flatParameterMetaDataRepository.All().ToList(); _parameterMetaDataList.Each(parameterMetaData => { parameterMetaData.ParentContainerPath = _flatContainerRepository.ContainerPathFrom(parameterMetaData.ContainerId).ToString(); //Use clone here to ensure that we are not modifying the reference stored in the repository var valueOrigin = _valueOriginRepository.FindBy(parameterMetaData.ValueOriginId).Clone(); parameterMetaData.ValueOrigin = valueOrigin; }); //now cache the parameter meta data by container path foreach (var parameterValueMetaDataGroup in _parameterMetaDataList.GroupBy(x => x.ParentContainerPath)) { _parameterMetaDataCacheByContainer.Add(parameterValueMetaDataGroup.Key, new List<TParameterMetaData>(parameterValueMetaDataGroup)); } }