Каковы лучшие практики по управлению подключениями к базам данных в .NET?

Что касается передового опыта по управлению соединениями с базой данных в приложении .NET - я знаю, что вообще плохо передавать объект соединения.

Тем не менее, у меня есть некоторые конкретные курьезы:

1. У меня есть два экземпляра бизнес-объектов разных классов в отношениях родитель-потомок (дочерний объект является личным.) Что из следующего лучше?

Оставьте одно частное статическое соединение открытым и общим, используемым обоими объектами, и оставляйте открытым, пока родительский объект не будет удален.

Держите два закрытых статических соединения открытыми, по одному для каждого объекта, чтобы они не закрывались до тех пор, пока объект не будет утилизирован.

Не держите статические соединения; открыть и затем закрыть новое соединение для каждого метода, который требует этого. Тем не менее, большинство моих методов запускают только 1-3 запроса, так что это кажется неэффективным ...?

2. Мой второй вопрос по сути тот же, но для одной формы. Что здесь лучше?

Оставьте одно частное статическое соединение открытым и общим на протяжении всей жизни формы.

Не держите статическое соединение; открыть и затем закрыть соединение для каждого метода в форме, которая требует его (опять же, всего 1-3 запроса на метод.)

Ответы на вопрос(4)

Ваш ответ на вопрос