PetaPoco.Database реализует IDisposable, но я редко, если когда-нибудь увидеть примеры кода (в том числе на PetaPoco-х own website), которые включают в себя, используя заявление следующим образом:PetaPoco.Database реализует IDisposable, поэтому почему большинство примеров не имеют инструкции 'using'?
using (var db = new Database("MyConnectionString"))
{
// Do database stuff
}
Чаще всего я просто вижу:
var db = new Database("MyConnectionString");
// Do database stuff
// I never see .Dispose() called.
Как должны быть переданы объекты PetaPoco.Database?
Если он реализует IDisposable, вы должны обязательно вызвать Dispose. И, в любом случае, вам нечего терять, если метод Dispose ничего не делает – Steve
Но если IDisposable реализован, тогда я не должен помещать его в блок «using», так как это обычно означает, что «использование» предназначено для использоваться? – Howiecamp
@Howiecamp Это так и должно. они не делают этого в примерах, потому что GC заботится об этом, когда «AppDomain» уничтожается программой. – Behrooz