[VB.NET] classdefinitie dialer

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Zoufiax
  • Registratie: Augustus 2003
  • Laatst online: 29-03-2024
Mijn kennis van VB.NET is nog zeer beperkt, en ik zit nog teveel op de oude manier te programmeren, dus te weinig objectgeoriënteerd. Nu wil ik op m'n werk een simpel tooltje maken (ik laat in het midden wat die uiteindelijk moet gaan doen, daar gaat het hier niet over namelijk). Er zijn een aantal dialers waar een aantal campagnes op staan. Iedere campagne heeft een naam, en is aktief of niet. Ik wil een objectrepresentatie maken van een dialer, met daaronder een lijst met alle campagnes die erop draaien, met per campagne de naam en of deze aktief is. Iedere campagne is in feite ook weer een object gebaseerd op een class met de properties CampagneNaam en Aktief (boolean).

Wat ik graag zou willen weten is hoe ik de dialerclass moet opzetten zodat deze doet waar ik hem voor nodig heb. Ik heb wat geprobeerd met een hashtable en andere collections, maar ik kom er niet uit. Hier volgt in grote lijnen hoe ik de class zou willen gebruiken.

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
    Dim MijnDialer As New Dialer
    With MijnDialer
        'vul wat properties om de lijst met campagnes op te kunnen halen
        '[knip]
        .Refresh() 'vul de lijst met campagnes (naam en aktief)
    End With

    Dim c as new Campagne
    For Each c in MijnDialer.Campagnes
        Console.Writeln c.CampagneNaam & " " & c.Aktief.ToString
    Next


Ook wil ik makkelijk kunnen zoeken in de lijst met campages om te kijken of een bepaalde campagnenaam daar in voorkomt of niet.

Acties:
  • 0 Henk 'm!

Verwijderd

Ik programmeer nou al zelf een tijdje OOP en in deze situatie zou ik gaan voor 2 Classes: Dialer en Campagne

Op deze manier kan je per Dialer wat campagnes toe kennen (d.m.v. Array/List<T>) om deze vervolgens op te slaan (wat op meerdere manieren kan, via een DBMS als MSSQL/PostgreSQL/SQLite of XML) maar dit ligt er maar net aan wat je nog met je data wilt.

Wat er per Class aan propperties, methods en constructors moet komen dat weet je zelf het beste (dit doe je namelijk op basis van de data die je wil bijhouden) en is een kwestie van gescheiden houden van Campagne data en Dialer data en deze aan de goede classes toekennen ;) dit doe je aan de hand van je type data denk aan propperties van het type: string/int/bool (zoals je zelf al aangaf)

[ Voor 23% gewijzigd door Verwijderd op 24-02-2009 18:11 ]


Acties:
  • 0 Henk 'm!

  • Zoufiax
  • Registratie: Augustus 2003
  • Laatst online: 29-03-2024
Inderdaad twee classes, Dialer en Campagne. Maar binnen Dialer moet er een lijst worden aangemaakt waarin 1 of meer objecten van het type Campagne kunnen worden aangemaakt. Maar ik weet niet hoe ik dat voor elkaar moet krijgen. Zie ook mijn eerste bericht, waarin staat hoe ik de classes zou willen kunnen gebruiken. Misschien wil iemand hier voorbeeldcode voor geven. Mijn dank zou groot zijn.

Acties:
  • 0 Henk 'm!

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Zoals meestal bij dit soort vragen is mijn antwoord kort en simpel: ga je eerst eens inlezen. Zoals je het nu laat overkomen wil je een kant en klaar antwoord op je vraag, volledig gericht op je probleem. Logisch, maar je leert er natuurlijk niets van als mensen je het antwoord voorkauwen.
Ik geef je mee dat je met Generics (ff googlen) een lijst kan maken met objecten van het type Campagne. Maar voordat je de concepten van Generics kan bevatten moet je mijns inziens eerst meer van OO en VB.Net leren.
In het boekentopic kun je voldoende voorbeelden vinden van boeken waar je meer kennis mee kunt opdoen en er zijn ook legio websites die je meer over OO en .Net kunnen vertellen.

Acties:
  • 0 Henk 'm!

  • Zoufiax
  • Registratie: Augustus 2003
  • Laatst online: 29-03-2024
Ik heb een boek over VB.NET en ik heb er naar gezocht op internet. En ik heb geprobeerd zelf op de oplossing te komen. Maar dat wil niet altijd zeggen dat je zelf overal uit kunt komen. Soms is het handig als iemand met ervaring je op weg helpt.

Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 13:34

Haan

dotnetter

Met bovenstaande tips en hints in de goede richting moet je nu een heel eind gaan komen.

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

Verwijderd

Zoals ik in mijn post al zei kun je aan je Dialer class meerdere campagnes d.m.v een Array of List<T> toekennen. Als je hierop had gegoogled was je vanzelf in de sectie Generics beland ;) dit is wat je naar mijn mening het beste kan gebruiken om meerdere campagnes en verschillende campagnes toe te kennen aann jou Dialer class.

Ook zou ik inderdaad eens kijken naar een goed boek over OOP > VB.NET (afhankelijk van wat je hier nog in de toekomst mee wilt doen)

  • creator1988
  • Registratie: Januari 2007
  • Laatst online: 22-09 23:32
Ergo: Maak een property aan in je Dialer class, van het type List(Of Campagne).
Als je die de naam Campagnes geeft dan kan je met dialer.Campagnes.Add() nieuwe toevoegen, en er ook doorheen lopen als in je eerste post.

Verwijderd

creator1988 schreef op donderdag 26 februari 2009 @ 10:13:
Ergo: Maak een property aan in je Dialer class, van het type List(Of Campagne).
Als je die de naam Campagnes geeft dan kan je met dialer.Campagnes.Add() nieuwe toevoegen, en er ook doorheen lopen als in je eerste post.
Je kan wel een List property maken zodat hij hier makkelijk campagnes aan kan toevoegen en erdoorheen kan itereren maar als hij van het type Campagne een property zou maken moet hij hier een Array van maken of ervoor zorgen dat deze een van de generic interface's implementeerd (zoals: IList en ICollection).

Kijk hier voor de Generic Interfaces
Pagina: 1