示例#1
0
 internal void CopyFrom(FindCriteriaElement other)
 {
     foreach (ContractTypeNameElement ctn in other.ContractTypeNames)
     {
         ContractTypeNames.Add(new ContractTypeNameElement()
         {
             Name = ctn.Name, Namespace = ctn.Namespace
         });
     }
     Duration = other.Duration;
     foreach (XmlElementElement ext in other.Extensions)
     {
         Extensions.Add(new XmlElementElement()
         {
             XmlElement = (XmlElement)ext.XmlElement.CloneNode(true)
         });
     }
     MaxResults   = other.MaxResults;
     ScopeMatchBy = other.ScopeMatchBy;
     foreach (ScopeElement scope in other.Scopes)
     {
         Scopes.Add(new ScopeElement()
         {
             Scope = scope.Scope
         });
     }
 }
示例#2
0
        internal void InitializeFrom(FindCriteria fc)
        {
            foreach (var ctn in fc.ContractTypeNames)
            {
                ContractTypeNames.Add(new ContractTypeNameElement()
                {
                    Name = ctn.Name, Namespace = ctn.Namespace
                });
            }
            Duration = fc.Duration;
            var doc = new XmlDocument();

            foreach (var ext in fc.Extensions)
            {
                var xr = ext.CreateReader();
                xr.MoveToContent();
                Extensions.Add(new XmlElementElement()
                {
                    XmlElement = (XmlElement)doc.ReadNode(xr)
                });
            }
            MaxResults   = fc.MaxResults;
            ScopeMatchBy = fc.ScopeMatchBy;
            foreach (var scope in fc.Scopes)
            {
                Scopes.Add(new ScopeElement()
                {
                    Scope = scope
                });
            }
        }
        public FindCriteria(Type contractType)
            : this()
        {
            var cd = ContractDescription.GetContract(contractType);

            ContractTypeNames.Add(new XmlQualifiedName(cd.Name, cd.Namespace));
        }