Perché vuoi farlo? Il modo corretto per inviare l'input dell'utente al database non consiste nell'evitarlo, ma nell'usare parametri della query .
using(var command = new SqlCommand("insert into MyTable(X, Y) values(@x, @y)", connection))
{
command.Parameters.Add("@x", textBoxX.Text);
command.Parameters.Add("@y", textBoxY.Text);
command.ExecuteNonQuery();
}
Ciò fornisce prestazioni migliori, perché il testo della query è sempre lo stesso, quindi il piano di esecuzione della query può essere memorizzato nella cache. Questo ti protegge anche dagli attacchi di SQL injection. E ti consente anche di ignorare i problemi di formattazione dei dati (ad es. come viene formattato un DateTime in SQL-Server? Come dovresti rappresentare un numero in SQL? e così via)