Exemple #1
0
    public override IEnumerable <Item> Load()
    {
        if (Assembly == null && File != null)
        {
            Assembly = Assembly.LoadFrom(File.FullName);
        }
        else if (Assembly != null && File == null)
        {
            File = new FileInfo(Assembly.Location);
        }

        if (!IsValidConfinementItem(this))
        {
            yield break;
        }

        yield return(this);

        var sibling = Item.Resolve(Confinement, File.FullName + ".mdb");

        if (sibling != null)
        {
            yield return(sibling);
        }

        sibling = Item.Resolve(Confinement, File.FullName + ".config");
        if (sibling != null)
        {
            yield return(sibling);
        }

        foreach (var item in ReadAssembly())
        {
            yield return(item);
        }

        foreach (var rname in Assembly.GetReferencedAssemblies())
        {
            var ritem = new AssemblyItem()
            {
                Confinement = Confinement,
                Assembly    = Assembly.Load(rname.FullName)
            };
            foreach (var item in ritem.Load())
            {
                yield return(item);
            }
        }
    }
Exemple #2
0
    public override IEnumerable<Item> Load()
    {
        if (Assembly == null && File != null) {
            Assembly = Assembly.LoadFrom (File.FullName);
        } else if (Assembly != null && File == null) {
            File = new FileInfo (Assembly.Location);
        }

        if (!IsValidConfinementItem (this)) {
            yield break;
        }

        yield return this;

        var sibling = Item.Resolve (Confinement, File.FullName + ".mdb");
        if (sibling != null) {
            yield return sibling;
        }

        sibling = Item.Resolve (Confinement, File.FullName + ".config");
        if (sibling != null) {
            yield return sibling;
        }

        foreach (var item in ReadAssembly ()) {
            yield return item;
        }

        foreach (var rname in Assembly.GetReferencedAssemblies ()) {
            var ritem = new AssemblyItem () {
                Confinement = Confinement,
                Assembly = Assembly.Load (rname.FullName)
            };
            foreach (var item in ritem.Load ()) {
                yield return item;
            }
        }
    }
Exemple #3
0
    public override IEnumerable <Item> Load()
    {
        if (!IsValidConfinementItem(this))
        {
            yield break;
        }

        yield return(this);

        var sibling = Item.Resolve(Confinement, File.FullName + ".mdb");

        if (sibling != null)
        {
            yield return(sibling);
        }

        sibling = Item.Resolve(Confinement, File.FullName + ".config");
        if (sibling != null)
        {
            yield return(sibling);
        }

        foreach (var item in ReadAssembly())
        {
            yield return(item);
        }

        foreach (var rname in Assembly.GetReferencedAssemblies())
        {
            var ritem = new AssemblyItem(Confinement, Assembly.Load(rname.FullName));
            foreach (var item in ritem.Load())
            {
                yield return(item);
            }
        }
    }