public int EstimateCount(Uri resourceUri, Filter filter, IEnumerable <Selector> selectors) { using (ClientContext <IWSEnumerationContract> ctx = new ClientContext <IWSEnumerationContract>(_endpointUri, _binding.MessageVersion.Addressing, _proxyFactory, mx => { mx.Add(new ResourceUriHeader(resourceUri.ToString())); mx.Add(new SelectorSetHeader(selectors)); })) { OperationContextProxy.Current.AddHeader(new RequestTotalItemsCountEstimate()); FilterMapExtension.Activate(_filterMap); EnumerationModeExtension.Activate(EnumerationMode.EnumerateEPR, null); ctx.Channel.Enumerate(new EnumerateRequest { EnumerationMode = EnumerationMode.EnumerateEPR, OptimizeEnumeration = _optimize ? new OptimizeEnumeration() : null, Filter = filter, }); TotalItemsCountEstimate totalItemsCountEstimate = OperationContextProxy.Current.FindHeader <TotalItemsCountEstimate>(); return(totalItemsCountEstimate.Value); } }
public static TotalItemsCountEstimate ReadFrom(XmlDictionaryReader reader) { reader.ReadStartElement(ElementName, ManagementNamespaces.Namespace); int value = XmlConvert.ToInt32(reader.ReadString()); TotalItemsCountEstimate result = new TotalItemsCountEstimate(value); reader.ReadEndElement(); return result; }
public static TotalItemsCountEstimate ReadFrom(XmlDictionaryReader reader) { reader.ReadStartElement(ElementName, ManagementNamespaces.Namespace); int value = XmlConvert.ToInt32(reader.ReadString()); TotalItemsCountEstimate result = new TotalItemsCountEstimate(value); reader.ReadEndElement(); return(result); }