public AssemblyInfo CollectAssemblyInfo(string path)
 {
     try
     {
         Assembly     assembly = Assembly.LoadFrom(path);
         AssemblyInfo result   = new AssemblyInfo(assembly.GetName().FullName);
         Type[]       types    = assembly.GetTypes();
         foreach (Type type in types)
         {
             if (!type.IsNested)
             {
                 NamespaceInfo nsi = null;
                 if (type.Namespace != null)
                 {
                     string[] namespaces = type.Namespace.Split('.');
                     nsi = result.GetNamespace(type.Namespace);
                 }
                 else
                 {
                     nsi = new NamespaceInfo("No namespace");
                 }
                 nsi.AddType(GenerateTypeInfo(type));
             }
         }
         return(result);
     }catch (Exception)
     {
         return(null);
     }
 }
        internal NamespaceInfo GetNamespace(string name)
        {
            NamespaceInfo result;

            if ((result = namespaces.Find(x => x.NamespaceName == name)) != null)
            {
                return(result);
            }
            result = new NamespaceInfo(name);
            namespaces.Add(result);
            return(result);
        }
        internal override NamespaceInfo GetNamespace(string name)
        {
            NamespaceInfo result;

            if ((result = namespaces.Find(x => x.Name == name)) != null)
            {
                return(result);
            }
            result = new NamespaceInfo(name);
            namespaces.Add(result);
            OnPropertyChanged("Namespaces");
            return(result);
        }
Beispiel #4
0
        public AssemblyResult Browse(string filename)
        {
            Type[]         types;
            NamespaceInfo  searchResult;
            AssemblyResult _result = new AssemblyResult();

            _asm  = Assembly.LoadFrom(filename);
            types = _asm.GetTypes();
            _result.Clear();
            foreach (var type in types)
            {
                searchResult = _result.FindNamespace(type.Namespace);
                if (searchResult == null)
                {
                    searchResult = new NamespaceInfo(type.Namespace);
                    _result.AddNamespace(searchResult);
                }
                searchResult.AddClass(new ClassInfo(type));
            }
            return(_result);
        }
        public AssemblyInfo Browse(string filename)
        {
            Assembly     assembly;
            AssemblyInfo result = new AssemblyInfo();

            Type[]        types;
            NamespaceInfo searchableNamesapce;

            assembly = Assembly.LoadFrom(filename);
            types    = assembly.GetTypes();
            foreach (var type in types)
            {
                searchableNamesapce = result.Namespaces.Find(i => i.Name == type.Namespace);
                if (searchableNamesapce == null)
                {
                    searchableNamesapce = new NamespaceInfo(type.Namespace);
                    result.Namespaces.Add(searchableNamesapce);
                }
                searchableNamesapce.Classes.Add(new ClassInfo(type));
            }

            return(result);
        }
Beispiel #6
0
 public void AddNamespace(NamespaceInfo namespaceInfo)
 {
     Namespaces.Add(namespaceInfo);
 }