using в EnterpriseLibrary
От: s.p.  
Дата: 08.12.05 15:46
Оценка:
Юзаю EnterpriseLibrary от Microsoft-а.
возник спор: какой код более корректен:

Database db = .....
DBCommandWrapper cmd = db.GetStoredProcCommandWrapper(....);
cmd.AddInParameter(......);
.......
DataSet ds = db.ExecuteDataSet(cmd);

или
Database db = .....
using(DBCommandWrapper cmd = db.GetStoredProcCommandWrapper(...)
{
    cmd.AddInParameter(......);
    .......
    DataSet ds = db.ExecuteDataSet(cmd);
}

Я считаю что 2-й вариант корректней.
Аргументы:
1. запрос может занимать значительные ресурсы как на клиенте так и на сервере. Когда их освободит сборщик мусора — никто не знает. Что может сказаться на быстродействии сервера в первую очередь.
2. Если кто-то реализовал интерфейс IDisposable — значит нада чего-то Dispose-ить.
Аргументы оппонента:
1. В EnterpriseLibrary уже все сдалано за нас и нефиг заморачиваться.
Рассудите
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.