Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di Shea
    Registrato dal
    Jul 2000
    Messaggi
    157

    [VB.NET] Passare connessione db tra form

    Ciao,
    ho bisogno di capire come funziona la logica di passaggio di in informazioni tra due form della stessa applicazione, in particolare di una connessione a Oracle.

    Nella prima form, maschera di accesso, inserisco user e password e verifico se mi sono connesso, se sono connesso apro la seconda maschera.

    codice:
    users = Me.Text1.Text
    Password = Me.Text2.Text
    schema = Environ("NOME_SID")
        'apro la connessione al database
        Dim oradb As String = "Data Source=" & schema & ";User Id=" & users & ";Password=" & Password & ";"
        Dim conn As New OracleConnection(oradb)
        conn.Open()
        Dim cmd As New OracleCommand
        If conn.State = ConnectionState.Open Then
            Me.Hide()
            Errore.Show()
        Else
            MsgBox("Connessione non riuscita :(")
        End If
    nella seconda maschera devo scrivere qualcosa per reperire i dati di connessione della prima? O devo aprire una nuova connessione?

    Per ora nella seconda form ho scritto:
    codice:
    Dim dbQuery As New OracleCommand
    dbQuery.Connection = conn
    e visual studio mi dice che il nome conn non è dichiarato.

  2. #2
    Ti manca il concetto di scope di una variabile.

    Ti suggerisco di cercare su MSDN la voce "scope di una variabile vb.net" ho trovato per te questo ma è in inglese: http://msdn.microsoft.com/en-us/library/1t0wsc67.aspx

    Se padroneggerai il concetto di cui sopra la soluzione verrà da se.

    una soluzione preconfezionata, se vuoi mantenere una connessione aperta e condivisa per tutta l'applicazione potrebbe essere avere un oggetto con un metodo statico che restituisce la connessione di sistema tipo (in pseudocodice, non so come si dichiarino i metodi statici in vb)
    codice:
    class DataConnectionPoolManager
    {
         static Dictionary<string, Connection> connections = new ...
         static void AddConnection(string ConnectionID, Connection c)
         {
            ..aggiunge una nuova connessione al dizionario
         }
         static Connection GetConnection(string ConnectionID)
         {
             ...restituisce una connessione dato il suo nome.
         }
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.