Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1

    Problemi con connessione

    sto facendo un esercizio da un libro...ma proprio non trovo l'errore e ho copiato il codice...tra l'altro
    l'unica modifica che ho apportato per ora di mio è che ho provato a mettere un db di access per vedere se l'errore cambiava...tante volte non andava sqlserver


    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.SqlClient" %>

    <html>
    <head>

    <script language="VB" runat="server">



    Sub Page_Load(Source As Object, E As EventArgs)

    Dim myConnection as SQLConnection
    Dim myCommand as SQLCommand
    Dim myReader as SQLDataReader
    Dim SQL as String
    Dim ConnStr as String
    Dim strdbpath as String

    SQL ="select * from Shipping_Methods"
    ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\inetpub\wwwroot\prove\pp.mdb;"

    'ConnStr= "server=localhost;uid=sa;pwd;database=iBuy"


    myCommand= New SQLCommand(SQL, myConnection)
    myReader = myCommand.ExecuteReader()

    ShipMethod.DataSource = myReader
    ShipMethod.DataBind()
    end Sub

    </script>


    <form runat="server">
    please

    <aspropDownList id="ShipMethod" DataTextField="ShippingMethod" DataValueField="ShippingMethodId" runat="server"/>


    </form>

    questo è l'errore

    ExecuteReader: la proprietà Connection non è stata inizializzata.
    Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere l'analisi dello stack.

    Dettagli eccezione: System.InvalidOperationException: ExecuteReader: la proprietà Connection non è stata inizializzata.

  2. #2
    non ho capito scusa, metti
    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.SqlClient" %> con
    ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\inetpub\wwwroot\prove\pp.mdb;" ?
    hai provato con:
    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.OleDB" %> ?

  3. #3
    mmm
    allora diciamo intanto che sono alle primisse armi

    pensavo <%@ Import Namespace="System.Data.SqlClient" %>
    serviva per importare una pacchetto per i dati di sql in generale..quindi sarà solo per sqlserver?

    mi devo richiamare quest'altra?
    <%@ Import Namespace="System.Data.OleDB"
    credo che neanche vadia bene giusto?
    myCommand= New SQLCommand(SQL, myConnection)


    ora do uno sguardo sulla connessione a access
    mi interessava capire perchè anche con sqlserver non adava

  4. #4
    Ti basta sostituire Sql con OleDb

    Dim myConnection as OleDbConnection
    Dim myCommand as OleDbCommand
    Dim myReader as OleDbDataReader

  5. #5
    ho scritto così

    Dim connessione As New System.Data.OleDb.OleDbConnection()
    Dim sql As New System.Data.OleDb.OleDbCommand()
    Dim myCommand as OleDbCommand
    Dim myReader as OleDbDataReader

    Dim ConnStr as String
    Dim strdbpath as String

    sql.CommandText = "SELECT * FROM Shipping_Methods"
    connessione.ConnectionString = "provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\inetpub\wwwroot\prove\pp.mdb;"
    connessione.Open()

    myReader = myCommand.ExecuteReader()

    ShipMethod.DataSource = myReader
    ShipMethod.DataBind()

    ma mi va in erorre anche se l'errore è un'altro


    Riferimento a un oggetto non impostato su un'istanza di oggetto.

    Descrizione: Eccezione non gestita durante l'esecuzione della richiesta Web corrente. Per ulteriori informazioni sull'errore e sul suo punto di origine nel codice, vedere l'analisi dello stack.

    Dettagli eccezione: System.NullReferenceException: Riferimento a un oggetto non impostato su un'istanza di oggetto.

  6. #6
    <%@ Page Language="VB"%>
    <%@ import Namespace="System.Data" %>
    <%@ import Namespace="System.Data.OleDB" %>

    <script runat="server">
    Sub Page_Load(ByVal sender as object, ByVal e as EventArgs)
    If Not Page.IsPostBack Then
    BindGrid()
    End If
    End Sub

    sub BindGrid()
    dim myconnection as OleDbConnection
    dim mycommand as OleDbCommand
    dim mydatareader as OleDbDataReader
    myconnection = new OleDbConnection("tua connessione")
    myconnection.open()
    mycommand = new OleDbCommand("SELECT * FROM Shipping_Methods", myconnection)
    mydatareader = mycommnand.ExecuteReader()
    ShipMethod.DataSource = myReader
    ShipMethod.DataBind()
    mydatareader.Close()
    myconnection.Close()
    end sub
    </script>

  7. #7

    FUNZIONA

    FUNZIONA!!!
    ora me la sutio ben bene
    ma che cosè che non andava...no..perchè non è che mi serviva per qualche lavoro per capire come si usa


    ti volevo chiedere quindi si importano e si usano 2 tipi di pacchetti e di funzioni diverse tra access e sqlserver....quindi penso ache con altri db

    ma tu quella a sqlserver non l'hai mai fatto...oltre a volerla imparare vorrei capire cosa avevo scritto di sbagliato copiando dal libro


    aaaaaaa....mille grazie

  8. #8
    con SqlServer si possono usare entrambi anche se in modo non appropriato mentre con access credo solo oledb
    il codice che hai scritto per System.Data.SqlClient va bene ma non puoi fare una connessione ad un db access
    .... credo
    comunque io non uso access per cui system.data.oledb non lo utilizzo mai :tongue:

  9. #9
    mille grazie...ora riparto da quello in sqlserver pèer capire li che errore mi dava...
    grazie ancora

    però una coa te la chiedo ..poi magari se non la sai la posto al forum

    quando mi usciva l'errore mi uscia anche questa scritta

    ----------------------------------------------------
    Il codice sorgente che ha generato questa eccezione non gestita può essere visualizzato soltanto durante la compilazione in modalità di debug. Per attivare tale modalità, eseguire una delle operazioni descritte di seguito, quindi richiedere l'URL:

    1) Aggiungere una direttiva "Debug=true" all'inizio del file che ha generato l'errore. Esempio:

    <%@ Page Language="C#" Debug="true" %>

    Oppure:

    2) Aggiungere la seguente sezione al file di configurazione dell'applicazione:

    <configuration>
    <system.web>
    <compilation debug="true"/>
    </system.web>
    </configuration>

    Se si utilizza la seconda tecnica, tutti i file all'interno dell'applicazione verranno compilati in modalità di debug. Con la prima tecnica verrà invece compilato in modalità di debug solo il file interessato.

    Importante: l'esecuzione di applicazioni in modalità di debug causa un sovraccarico della memoria o una riduzione delle prestazioni. Assicurarsi che il debug di un'applicazione sia disattivato prima di distribuirla in un contesto di produzione.
    ----------------------------------------------------

    IN PRATICA
    la riga di codice in cui sbagliavo non me la dava
    ma mettendo uno di queste 2 cose dovrebbe andare
    perchè Debug="true" ...non se lo piglia proprio
    mentre il file di configurazione dell'applicazione
    non so neanche che sia

  10. #10
    se tu metti debug="true" nel @page:
    <%@ Page Language="C#" Debug="true" %>
    non è che ti fa girare la pagina ma ti visualizza dove sta l'errore per cui ti individua la riga incriminata attraverso la quale riesci a sistemare il pasticciaccio...
    ...a volte...

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.