Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811

    .net funzione che restituisce un datareader ...come?

    salve a tutti
    dovrei creare una funzione che restituisce una datareader,
    ma qualsiasi cosa faccio diventa una funzione ricorsiva

    codice:
    public function data() as oledb.oledbdatareader
    
    data.read
    ec...
    ecc...
    'ma qui mi richama la stessa funzione...
    
    end function
    come posso fare per non farla diventare ricorsiva?
    oppure dichiarare un datareader interno e associarlo alla funzione data?
    deltipo : data = datareader1
    ma proprio nn riesco ad associarlo

    grazie per l'aiuto

  2. #2
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    up

  3. #3
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    che c'è scritto su quella riga per farla diventare ricorsiva?
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  4. #4
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    qunando faccio l'apertura di data o lo associoad un command
    diventa ricorsivo

    conosci un modo per dichiarare un datareader e
    farlo ritornare come valore alla funzione?

    grazie

  5. #5
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    oddio forse starò fuso io ma come hai detto tu non funziona?

    codice:
    public function data() as oledb.oledbdatareader
    
    'leggi il data reader
    tuoDataReader.Read
    'lo assegni
    data = tuoDataReader
    end function
    'distruggi il datareader
    End function
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  6. #6
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    ecco precisamente nel punto
    data = tuoDataReader

    ora non posso debuggare per vedere che errore da
    cmq è li che da errore se creo una variabile ti tipo datareader e la associo alla funzione
    altrimenti se uso direttamente la funzione mi fa il ricorsivo

  7. #7
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    bah forse dico na cazzata prova così:
    codice:
    public function data() as oledb.oledbdatareader
    'leggi il data reader
    tuoDataReader.Read
    'lo assegni
    Return tuoDataReader
    End function
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  8. #8
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    tutto esatto sypher
    solo che sto facendo un web method-->un servizio web

    codice:
      <WebMethod()> _
           Public Function RestituisciDataReader(ByVal Strsql As String) As Odbc.OdbcDataReader
            Conn.ConnectionString = Strconn
            Conn.Open()
    
            Dim res As Odbc.OdbcDataReader
            Dim Com As New Odbc.OdbcCommand
            Dim i As Integer
    
            Com.CommandType = CommandType.Text
            Com.CommandText = Strsql
    
            Com.Connection = Conn
    
            res = Com.ExecuteReader
    
            res.Read()
    
            Return res
           
            res.Close()
    
            Conn.Close()
        End Function
    e mi da errore riferimento a oggetto non impostato su istanza di oggetto

  9. #9
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    intanto stai attento che dopo il return non dovrebbe eseguire più il codice che segue se è come c#!
    forse devi fare Dim res As new Odbc.OdbcDataReader?
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  10. #10
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    no, non accetta lo new da errore

    dice
    new, inaccessibile in questo contensto xche è private

    poi in tutte le mie applicazioni faccio semplicemente in as oledb
    e mi funziona tutto

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.