Wrapping a SQL statement around a connection doesn't sound WTFey to me. I probably would've put in a connection retry attempt loop as well just to be extra paranoid. It's hard to say if GetOneItemFromDB is a WTF or not without knowing how the SQL server driver works internally (the datatable may be set up to fetch each row one at a time with a cursor in which case the performance hit from retriving subsequent datarows may be optimized out). But I think we all know the real enterprisey solution to this is to use a LINQ to SQL adapter for this database or possibly typed data sets if you're stuck in .NET Framework 2.0-land.