vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich selber fertig machen kann 
Autor: lkatsch
Datum: 29.09.04 10:10

und schließlich eine geeignete Collection dafür...
'------------------------------------------------------------------------------
' ----------------------------------------------------------------------
' clsObject Collection collectionContries
' Author: Gregor Böhme
' Letzte Änderung: Mittwoch, 29. September 2004 um 10:09:31
'------------------------------------------------------------------------------
' ----------------------------------------------------------------------
Public Class collectionContries : Inherits dbiObjCollection
 
#Region "Interne Deklarationen"
Private _contriesCollection As New Collection()
Private _contriesCollectionChanges As New Collection()
Private _collectionTypeName As String = "clsContries"
 
#End Region
 
#Region "Konstruktoren"
 
   ' Lese alle Objekte aus der Datenbank und füge sie in die Collection
 
    Public Sub New()
        Dim connection As New SqlClient.SqlConnection( _
          trainingsmanager.TmConnectionString)
        Try
            Dim objSelectQuery As String = "SELECT contryID, contryName," & _
              "deleteFlag, updateAccountID, updateTimestamp FROM tm_contries"
            connection.Open()
            Dim selectRequest As New SqlClient.SqlCommand(objSelectQuery, _
              connection)
            Dim selectReader As SqlClient.SqlDataReader = _
            selectRequest.ExecuteReader
            While selectReader.Read
               Dim _contryID As Integer ' DB:int identity(4)
               Dim _contryName As String ' DB:varchar(255)
               Dim _deleteFlag As Boolean ' DB:bit(1)
               Dim _updateAccountID As Integer ' DB:int(4)
               Dim _updateTimestamp As DateTime ' DB:datetime(16)
 
               _contryID = selectReader.Item("contryID")
               _contryName = selectReader.Item("contryName")
               _deleteFlag = selectReader.Item("deleteFlag")
               _updateAccountID = selectReader.Item("updateAccountID")
               _updateTimestamp = selectReader.Item("updateTimestamp")
               Dim newContries As New clsContries(_contryID, _contryName, _
                 _deleteFlag, _updateAccountID, _updateTimestamp)
               _contriesCollection.Add(newContries, _contryID.ToString)
            End While
        connection.Close()
        Catch
            connection.Close()
        End Try
    End Sub
 
#End Region
 
#Region "Eigenschaften"
 
    Public ReadOnly Property contries() As Collection
        Get
            Return _contriesCollection
        End Get
    End Property
 
    Public ReadOnly Property CollectionTypeName() As String
        Get
            Return _collectionTypeName
        End Get
    End Property
 
    Public Overrides ReadOnly Property Data() As Collection
        Get
            Return _contriesCollection
        End Get
    End Property
 
#End Region
 
#Region "Methoden und Funktionen"
 
   ' Suche ein Element in der Collection und liefere Referenz zurück
    Public Function GetItemRef(ByVal myContryID As Integer) As clsContries
        Return _contriesCollection.Item(myContryID.ToString)
    End Function
 
 
   ' Empfängt Änderungen in der Collection und fügt sie in die Warteschlange ein
    Public Overrides Function ReceiveChanges(ByVal myChanges As _
      clsDatabaseChanges)
        _contriesCollectionChanges.Add(myChanges, myChanges.FilterString & ":" _
        & myChanges.RowAction)
    End Function
 
   ' Arbeitet die in der Warteschlange befindlichen Änderungen ein 
    Public Overrides Sub DoUpdate()
        Dim currChange As clsDatabaseChanges
        For Each currChange In _contriesCollectionChanges
             Dim pkArray() As String
            pkArray = currChange.FilterString.Replace("AND", ";").Split(";")
            Dim _contryID As Integer = pkArray(0).Trim.Substring(pkArray( _
              0).Trim.IndexOf("=") + 1)
            Select Case currChange.RowAction
                Case "update"
                    CType(_contriesCollection.Item(_contryID.ToString), _
                      clsContries).UpdateFromDb()
                Case "insert"
                    Try
                        Dim newContries As New clsContries(_contryID, True)
                        _contriesCollection.Add(newContries, _contryID.ToString)
                    Catch
                    End Try
                Case "delete"
                    _contriesCollection.Remove(_contryID.ToString)
            End Select
            _contriesCollectionChanges.Remove(currChange.FilterString & ":" & _
              currChange.RowAction)
        Next
    End Sub
 
   ' Fügt ein dbiObjekt in die Collection und die Datenbank ein
 
    Public Sub AddItem(ByVal myContryName As String)
    Dim tmpContries As New clsContries(myContryName)
        _contriesCollection.Add(tmpContries,tmpContries.ContryID.ToString)
    End Sub
 
#End Region
 
End Class 'collectionContries
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich selbe...1.457teccer29.09.04 09:06
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...780ModeratorFZelle29.09.04 09:40
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...867teccer29.09.04 10:11
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...835ModeratorFZelle29.09.04 20:05
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...786lkatsch29.09.04 20:23
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...803ModeratorFZelle29.09.04 20:38
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...846teccer29.09.04 21:55
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...817ModeratorFZelle30.09.04 09:15
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...780lkatsch29.09.04 10:02
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...781teccer29.09.04 10:12
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...811lkatsch29.09.04 10:29
Sehr geil - Respekt - ohne Text ;)812teccer29.09.04 10:16
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...895lkatsch29.09.04 10:06
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...889lkatsch29.09.04 10:06
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...1.150lkatsch29.09.04 10:08
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...951lkatsch29.09.04 10:10
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...844lkatsch29.09.04 10:11
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...753lkatsch29.09.04 10:32
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...790UR29.09.04 13:01
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...911lkatsch29.09.04 13:09
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...754lkatsch29.09.04 10:37
Kompliment siehe Text874teccer29.09.04 10:48
Re: OOP Deluxe - Eigenschaften zur Laufzeit - Wie man sich s...788lkatsch29.09.04 11:17
OK, geht klar ;)816teccer29.09.04 11:52

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel