vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 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 - Ein- und Umsteiger
Unsichtbare Sub in Klasse 
Autor: Schudi
Datum: 23.08.12 16:17

Sicherlich schlagt Ihr Euch mit der Hand gegen die Stirn bei meinem Anfängerproblem, aber folgendes:

Ich habe eine Klasse cArtikel und innerhalb der Klasse eine Sub, die nach außen (also für die aufrufende Form) sichtbar sein soll.
Imports System.Data.SqlServerCe
 
Public Class cArtikel
    Private cArtNummer As Integer
    Private cArtGruppe As Integer
    ' Hier folgen weitere Felder
 
    Const myConnstring As String = "datasource = C:\Artikel.sdf; LCID=1033"
 
    ' hier folgen Propertys 
 
    Shared Sub CreateTable()  'Soll nach Außen sichtbar sein
 
        Dim myCommand As String = "Create Table Artikel (ArtNummer int Primary" & _
          "Key not null, ArtGruppe int)"
        SetSQL(myCommand)
 
    End Sub
 
    Shared Sub SetSQL(ByVal SQLCommand As String)  ' Soll nach außen nicht 
    ' sichtbar sein
 
        Dim myConn As New SqlCeConnection
        Dim myCmd As New SqlCeCommand
 
        myConn.ConnectionString = myConnstring
        myCmd.Connection = myConn
        myCmd.CommandText = SQLCommand
        Try
            myConn.Open()
            myCmd.ExecuteNonQuery()
            myConn.Close()
        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler!")
        End Try
    End Sub
 
End Class
Die Sub "SETSQL" ist rein intern und soll daher nach außen nicht sichtbar sein. Setze ich allerdings dort statt "shared" "public" oder "privat" kommt die Fehlermeldung:

"Auf ein Instanzmember einer Klasse kann nicht ihne expliziete Instanz einer Klasse von einer/m freigegebenen Methode/Member aus verwiesen werden".

Wie kann ich die Sub SETSQL so verstecken, dass sie in der aufrufenden Form nicht sichtbar ist?

Sicher wäre es möglich diese Sub wiederum in eine eigene Klasse (sprich später DLL) auszulagern, aber geht das nicht auch anders?
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Unsichtbare Sub in Klasse1.939Schudi23.08.12 16:17
Re: Unsichtbare Sub in Klasse1.211keco23.08.12 17:28
Re: Unsichtbare Sub in Klasse1.243Schudi23.08.12 17:59
Re: Unsichtbare Sub in Klasse1.182DotNetErbse24.08.12 11:05

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