public IEnumerable <IPowershellItem> GetPowershellItemsEnumerable() { PowershellExecute psExecute = new PowershellExecute(); IPowershellItem psItemInstance = reflecInsance.GetInstanceFromFQDN(this.ModelFQDN) as IPowershellItem; var psresult = psExecute.InokePipeline(psItemInstance.GetItemsCommand.GetCommandString()); foreach (var psitem in psresult.Result) { var tempPowershellItem = reflecInsance.GetInstanceFromFQDN(this.ModelFQDN); foreach (var propertyName in reflecInsance.GetObjectPropertiesNamesNotFromInterface(psItemInstance, typeof(IPowershellItem))) { reflecInsance.AddValueToObjectByPropertyName(ref tempPowershellItem, psitem.Properties[propertyName].Value.ToString(), propertyName); } yield return((IPowershellItem)tempPowershellItem); } }