[VB.NET/COM+

Pagina: 1
Acties:

  • Scare360
  • Registratie: Juli 2001
  • Laatst online: 11-09 09:22
Op de een of andere manier is er iets vreemd met de scope van mijn vars. Wat ik wil is een simpele klasse als business object mbv COM+. Ik heb een functie die zowel een lokaal gedeclareerde var set en een private var binnen mijn business object welteverstaan myvar & lvintValue. Het viel mij op dat de lvintValue altijd 0 als waarde blijft houden, ook na toekenning van de setValue(500). Dit gebeurt alleen indien ik mijn business object laat erven van de Services en wel zo:
code:
1
Public Class Business : Inherits ServicedComponent

Indien ik het business niet laat erven wordt de lvintValue wel netjes gevuld met de opgegeven param waarde. myvar gaat trouwens altijd goed, ongeacht het wel of niet erven. Vage shit als je het mij vraagt...kan iemand mij verklaren waarom die scope naar de kloot is in ServiceComp?
code:
1
2
3
4
5
6
7
8
9
Public Class AccountVB : Inherits ServicedComponent
    Public lvintValue As Integer

    Public Sub setValue(ByVal Value As Integer)
      Dim myvar As Integer
      myvar = Value

      Me.lvintValue = Value
    End Sub

Verwijderd

Gokje, een ServicedComponent is de .NET tegenhanger van 'n COM-object binnen MTS dus kan geen state vasthouden?

Verwijderd

Gebruik properties hiervoor. Daar zijn properties voor in .NET.

  • Scare360
  • Registratie: Juli 2001
  • Laatst online: 11-09 09:22
Op dinsdag 05 maart 2002 10:12 schreef Otis het volgende:
Gebruik properties hiervoor. Daar zijn properties voor in .NET.
Dit is natuurlijk klinklare bullshit, sorry maar gebruik van getters en setters is natuurlijk identiek.

Jah de state das een goeie, maar dat heeft toch niet direct iets met de scope van vars te maken? ik kan gewoon geen private, public en protected vars van een klasse (object) een waarde toekennen indien de klasse van serviced component erft. Das toch ronduit vreemd? Het doet mij zelfs vermoeden met een bug in de namespace services te maken te hebben. Dat ik mijn waardes niet over de transactie mee kan nemen alle, maar zonder ook maar een transactie type te specificeren en vast te leggen dat mijn methode transaction requered is... ik wordt gek.

In de documentatie is ook al niets terug te vinden