Kode itu buruk . injeksi SQL; DataTable tanpa alasan; StringBuilder tanpa alasan. Ini dilakukan dengan sederhana, menggunakan "dapper" (tersedia gratis di NuGet):
using(var conn = GetSomeConnection()) { // <== todo
return conn.Query<string>(
"select title from MyTable where example@sqldat.com and example@sqldat.com",
new { id = myId, var = myVar }).FirstOrDefault() ?? "";
}
Ini adalah:
- aman untuk injeksi (berparameter penuh)
- langsung (tidak ada lapisan yang tidak perlu seperti DataTable)
- dioptimalkan