vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 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
Singleton - Feedback 
Autor: Sepp_81
Datum: 05.09.14 11:05

Hallo zusammen,

ich muss meinen logger als Singleton umsetzen und habe dabei gleich noch probiert properties zu verwenden.

Ich würde gerne ein Feedback haben ob ich das richtig gemacht habe. Evtl kann jemand mal seine Meinung zum Code äußern oder mich belehren wie man es besser macht.

Hier der Code

'System.VisualBasic auskommentiert
Option Strict On
Option Explicit On
 
Public Class frmMain
 
    Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles _
      MyBase.Load
        LoggerClass.Instance.LoggerInfo("Testmessage", 2)
    End Sub
End Class
'System.VisualBasic auskommentiert
Option Strict On
Option Explicit On
 
Imports LoggerSingleton.LogDataSet
 
Public Class LoggerClass
 
    Private Shared LoggerDataSet As New LogDataSet
 
    Private _ex As Exception
    Private _message As String
    Private _priority As Integer
 
    '### Singlton Instance
    Private Shared LoggerSingletonObject As LoggerClass
 
    Public Shared ReadOnly Property Instance() As LoggerClass
        Get
            If LoggerSingletonObject Is Nothing Then
                LoggerSingletonObject = New LoggerClass
            End If
            Return LoggerSingletonObject
        End Get
    End Property
 
    '### Logger
    Public WriteOnly Property P_ex As Exception
        Set(value As Exception)
            _ex = value
        End Set
    End Property
 
    Public WriteOnly Property P_message As String
        Set(value As String)
            _message = value
        End Set
    End Property
 
    Public WriteOnly Property P_priority As Integer
        Set(value As Integer)
            _priority = value
        End Set
    End Property
 
    ''' <summary>
    ''' Schreibt die Fehlermeldung ins Log
    ''' </summary>
    ''' <param name="ex">Fehlermeldung</param>
    ''' <param name="priority">1:Fehler; 2:Problematisch; 3:Information</param>
    ''' <remarks></remarks>
    Public Sub LoggerInfo(ByVal ex As Exception, ByVal priority As Integer)
        P_ex = ex
        P_priority = priority
 
        Dim trace As Diagnostics.StackTrace = New Diagnostics.StackTrace(_ex, _
          True)
        Dim fileNames As String = trace.GetFrame((trace.FrameCount - _
        1)).GetFileName()
        Dim lineNumber As Integer = trace.GetFrame((trace.FrameCount - _
        1)).GetFileLineNumber()
 
        Try
            LoggerDataSet.Log.AddLogRow(_priority, Date.Now, _ex.Message, _
              fileNames, lineNumber)
        Catch genEx As Exception
            LoggerInfo(genEx.Message, 1)
        End Try
    End Sub
 
    ''' <summary>
    ''' Schreibt eine Information/Nachricht ins Log
    ''' </summary>
    ''' <param name="message">Fehlermeldung</param>
    ''' <param name="priority">1:Fehler; 2:Problematisch; 3:Information</param>
    ''' <remarks></remarks>
    Public Sub LoggerInfo(ByVal message As String, ByVal priority As Integer)
        P_message = message
        P_priority = priority
        Try
            Dim fileNames As String = ""
            Dim lineNumber As Integer
            LoggerDataSet.Log.AddLogRow(_priority, Date.Now, _message, _
              fileNames, lineNumber)
        Catch genEx As Exception
            LoggerInfo(genEx.Message, 1)
        End Try
    End Sub
End Class


Danke

Beitrag wurde zuletzt am 05.09.14 um 11:07:24 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Singleton - Feedback1.752Sepp_8105.09.14 11:05
Re: Singleton - Feedback1.029Micke20.10.14 09:39
Singleton - Feedback1.088Manfred X20.10.14 16:49

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