Toon posts:

[VB.NET/Remoting] Transparent proxy casten naar interface

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo!

Het lukt mij niet om een transparent proxy naar een interface te casten. Om precies te zijn: ik krijg de volgende exceptie te zien.
code:
1
System.InvalidCastException: Unable to cast transparent proxy to type 'productData.Iproduct'.

Dit stukje testcode heb ik gebruikt:
code:
1
2
3
4
        Dim tmp As Object
        tmp = pluginA._client.getModule(pluginA.Instance.Name)
        MsgBox(tmp.ToString)
        Dim product As Iproduct = DirectCast(tmp, Iproduct)


Het vreemde is dat mijn tmp object wel gewoon beschikbaar is. De ToString methode die ik gemaakt heb geeft gewoon een resultaat af. Pas wanneer ik dat object probeer te casten gaat het mis.

Ik heb op het internet gezocht en daar vond ik alleen informatie over deze exceptie bij het gebruik van meerdere AppDomains, binnen één client programma. In dat geval zou er een aantal assemblies niet (goed) geladen zijn, zodat de cast niet kon plaatsvinden.

Hebben jullie nog suggesties o.i.d.?

  • lier
  • Registratie: Januari 2004
  • Laatst online: 15:17

lier

MikroTik nerd

Misschien hulpzaam: Vergelijkbaar C# probleem

Eerst het probleem, dan de oplossing


Verwijderd

Topicstarter
Dankje,
Maar dat artikel had ik ook opgegoocheld.

Maar mijn plugins worden niet in een apart AppDomain geladen, omdat dan alle benodigde assemblies nog een keer ingeladen moeten worden.Het geheugen gebruik van je programma explodeert dan! (En je hebt weer extra problemen met lifetime van objecten)
Dmv mijn laadsysteem weet ik zeker dat deze dll's betrouwbaar zijn, dus is het niet nodig om ze in een ander appdomain te laden :)