Per evitare di non gestire eventuali errori nella creazione degli oggetti sarebbe meglio invece di

Originariamente inviato da Sgro
codice:
    protected void Button1_Click(object sender, EventArgs e)
    {
        OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\dbtest.mdb;User Id=admin;Password=;");
        OleDbCommand comm = new OleDbCommand("INSERT INTO [Prova] (Nome, Cognome, Indirizzo) VALUES (@Nome, @Cognome, @Indirizzo)", conn);
        comm.Parameters.AddWithValue("Nome", TextBoxNome.Text);
        comm.Parameters.AddWithValue("Cognome", TextBoxCognome.Text);
        comm.Parameters.AddWithValue("Indirizzo", TextBoxIndirizzo.Text);
        try
        {
            conn.Open();
            .....
sarebbe meglio

codice:
    protected void Button1_Click(object sender, EventArgs e)
    {
        OleDbConnection conn = null;         
        OleDbCommand comm = null;
        try
        {
            conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\dbtest.mdb;User Id=admin;Password=;");
            comm = new OleDbCommand("INSERT INTO [Prova] (Nome, Cognome, Indirizzo) VALUES (?, ?, ?)", conn); 
        comm.Parameters.Add("?", OleDbType.varchar).value = TextBoxNome.Text;
        comm.Parameters.Add("?", OleDbType.varchar).value = TextBoxCognome.Text;
        comm.Parameters.Add("?", OleDbType.varchar).value = TextBoxIndirizzo.Text;
            conn.Open();
            .....
mi sento poi di aggiungere che queste affermazioni

Originariamente inviato da Sgro
o lo abbandoni e passi al C# che è un linguaggio 1000 volte più professionale, faresti un salto di qualità notevole
...
C# in quanto è il linguaggio più ... completo della famiglia .NET
sono tue opinioni. I due linguaggi permettono di fare sostanzialmente le stesse cose. Dopo di che, i gusti sono gusti e non si discutono.