Die code is gewoon slecht . SQL injectie; DataTable zonder reden; StringBuilder zonder reden. Hier is het eenvoudig gedaan, met behulp van "dapper" (gratis beschikbaar op NuGet):
using(var conn = GetSomeConnection()) { // <== todo
return conn.Query<string>(
"select title from MyTable where [email protected] and [email protected]",
new { id = myId, var = myVar }).FirstOrDefault() ?? "";
}
Dit is:
- injectieveilig (volledig geparametriseerd)
- direct (geen onnodige lagen zoals DataTable)
- geoptimaliseerd