Tại sao bạn muốn làm điều đó? Cách chính xác để gửi thông tin đầu vào của người dùng tới cơ sở dữ liệu không phải là thoát khỏi nó mà là sử dụng tham số truy vấn .
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();
}
Điều này mang lại hiệu suất tốt hơn, vì văn bản truy vấn luôn giống nhau nên kế hoạch thực thi truy vấn có thể được lưu vào bộ nhớ đệm. Điều này cũng bảo vệ bạn chống lại các cuộc tấn công SQL injection. Và nó cũng cho phép bạn bỏ qua các vấn đề về định dạng dữ liệu (ví dụ:DateTime được định dạng như thế nào trong SQL-Server? Bạn nên biểu diễn một số trong SQL như thế nào? V.v.)