System.Xml.Serialization.XmlReflectionImporter.IncludeTypes C# (CSharp) Method

IncludeTypes() private method

private IncludeTypes ( ICustomAttributeProvider provider, RecursionLimiter limiter ) : void
provider ICustomAttributeProvider
limiter RecursionLimiter
return void
        private void IncludeTypes(ICustomAttributeProvider provider, RecursionLimiter limiter)
        {
            object[] attrs = provider.GetCustomAttributes(typeof(XmlIncludeAttribute), false);
            for (int i = 0; i < attrs.Length; i++) {
                Type type = ((XmlIncludeAttribute)attrs[i]).Type;
                IncludeType(type, limiter);
            }
        }

Same methods

XmlReflectionImporter::IncludeTypes ( ICustomAttributeProvider provider ) : void

Usage Example

		public override object GetInitializer (LogicalMethodInfo methodInfo)
		{
			LogicalTypeInfo sti = TypeStubManager.GetLogicalTypeInfo (methodInfo.DeclaringType);
			object[] ats = methodInfo.ReturnTypeCustomAttributeProvider.GetCustomAttributes (typeof(XmlRootAttribute), true);
			XmlRootAttribute root = ats.Length > 0 ? ats[0] as XmlRootAttribute : null; 
			
			XmlReflectionImporter importer = new XmlReflectionImporter ();
			importer.IncludeTypes (methodInfo.CustomAttributeProvider);
			XmlTypeMapping map = importer.ImportTypeMapping (methodInfo.ReturnType, root, sti.GetWebServiceLiteralNamespace (sti.WebServiceNamespace));
			return new XmlSerializer (map);
		}
All Usage Examples Of System.Xml.Serialization.XmlReflectionImporter::IncludeTypes