Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908

    [ASP.NET C#]Cannot implicitly convert type 'int' to 'System.Data.OleDb.OleDbDataReade

    Ho il seguente codice:

    codice:
    <%@ Page Language="C#" AutoEventWireup="true"   %>
    <%@ Import Namespace = "System.Data" %>
    <%@ Import Namespace = "System.Data.OleDb" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Pagina senza titolo</title>
    </head>
    <body>
    
    <script language=C# runat=server>
       
    void Page_Load(object Object, EventArgs e)
    {
        
    
            
                
    }
    
    
    
        protected void Button1_Click(object sender, EventArgs e)
        {
    string txtNome = Request.Form["txtNome"].ToString();
        string txtCognome = Request.Form["txtCognome"].ToString();
            String Scn = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=" + Server.MapPath("Clienti.mdb");
            OleDbConnection cn = new OleDbConnection(Scn);
            cn.Open();
            OleDbCommand cmd = new OleDbCommand("INSERTO INTO Categories (Nome, Cognome) VALUE (?,?)", cn);
            OleDbParameter par1 = new OleDbParameter("txtNome", OleDbType.WChar, 50);
            OleDbParameter par2 = new OleDbParameter("txtCognome", OleDbType.WChar, 50);
            par1.Value = txtNome;
            par2.Value = txtCognome;
            cmd.Parameters.Add(par1);
            cmd.Parameters.Add(par2);
            OleDbDataReader res = cmd.ExecuteNonQuery();
        }
    </script>
                
        
                               
         
        <form id="form1" runat="server" >
        <div>
            NOME:
            <asp:TextBox ID="txtNome" runat="server"></asp:TextBox>
    
            COGNOME:
            <asp:TextBox ID="txtCognome" runat="server"></asp:TextBox>
    
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Inserisci" /></div>
        </form>
    </body>
    </html>
    Quando avvio, mi da errore "Cannot implicitly convert type 'int' to 'System.Data.OleDb.OleDbDataReader", la riga che causa l'errore è quella evidenziata, qualcuno mi da una mano?
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  2. #2
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    mi sembra ovvio qual'è il problema !!
    il metodo ExecuteNonQuery() ritorna il numero di righe modificate.
    che senso ha mettere questo numero in un OleDbDataReader ?
    I got the remedy

  3. #3
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Quindi cosa devo scrivere?
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  4. #4
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    Originariamente inviato da dwb
    Quindi cosa devo scrivere?


    cmq,
    o cosi':
    cmd.ExecuteNonQuery();
    oppure:
    int righeModificate = cmd.ExecuteNonQuery();
    I got the remedy

  5. #5
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Risolto già, grazie cmq!
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

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.