[ASP|COM+|C#.NET|] Object doorgeven aan .NET COM+

Pagina: 1
Acties:

  • GF
  • Registratie: April 2002
  • Laatst online: 22-12-2025
Situatie:
1) COM+ application met daarin .NET components (dmv regasm, interfaces etc.)
2) ASP (classic) maakt met behulp van Server.CreateObject een instantie van een .NET object (ClassA). Dit is een klasse met enkele properties. Deze properties worden geset
3) ASP maak instantie van een ander .NET object (ClassB), wederom via COM, en wil vervolgens een methode aanroepen met als parameter het eerder gemaakte object van stap 2

Sample ASP code
code:
1
2
3
4
5
6
7
8
9
10
11
12
Dim classA, classB

Set classA = Server.CreateObject("Company.Product.ClassA")
classA.Property1 = 1;
classA.Property2 = "test";
classA.Property3 = "blaat";

Set classB = Server.CreateObject("Company.Product.ClassB")
result = classB.execute(classA) ' PROBLEEM ZIT HIER!

classA = nothing;
classB = nothing;


Sample .NET code (interface)
code:
1
int execute(ref object classA);


Probleem
Aanroepen van methode in ClassB resulteert in error. Nml 'Invalid procedure call or argument'.
De error verdwijnt door haakjes om de classA parameter te zetten. Dit heb ik ergens gevonden op een ander forum van iemand met hetzelfde probleem.
code:
1
result = classB.execute((classA))


Hiermee verder gegaan kom ik bij het volgende probleem. Nml het object is leeg (dus alle properties zijn niet geset!) bij binnenkomen van de execute methode van ClassB terwijl deze wel gevuld zijn voor ik de methode aanroep (controle met response.write).

Ik hoop dat iemand me hiermee (op weg) kan helpen. Heb er al te lang mee zitten prutsen. :'(

[ Voor 6% gewijzigd door GF op 03-01-2006 19:29 . Reden: sample .net toegevoegd ]


  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 15-04 15:52
misschien heb je iets aan dit topic?

[rml][ C#/Com]Property word niet ondersteund[/rml]
was een soortgelijk probleempje waar ik tegenaan liep

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


  • GF
  • Registratie: April 2002
  • Laatst online: 22-12-2025
Nee daar heb ik helaas niet veel aan. Property set gedeelte werkt gewoon in asp.

[ Voor 45% gewijzigd door GF op 03-01-2006 19:29 ]


  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

heb je al geprobeerd om niet by reference te passen maar by value ?

lees ook eens de documentatie over STA en MTA voor zover je dit nog niet hebt gedaan. dit legt uit hoe het geheugen beheerd wordt en hoe objecten etc doorgegeven worden.

ASSUME makes an ASS out of U and ME


  • GF
  • Registratie: April 2002
  • Laatst online: 22-12-2025
Ja bij value was poging 1 die resulteerde in de oplossing in ASP om er haakjes om te zetten. Dit werkt met resultaat dat object 'leeg' is.

By ref hoef je in ASP geen haakjes om de variabele te zetten maar ook hier resulteert het in een 'leeg' object.

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

misschien zal je zelf aan marshalling moeten doen?
ik ben ook even clueless

ASSUME makes an ASS out of U and ME

Pagina: 1