В общем случае нет, вы не должны использовать одно соединение - все поставщики .NET ADO.NET поддерживают объединение пулов, а обычный шаблон - открывать / закрывать соединения по мере необходимости (в using
или try/finally
, чтобы убедиться, что соединение закрыто в случае исключения).
В однопоточном клиентском приложении вы можете избавиться от использования общего статического подключения, но вряд ли это вам даст любое измеримое преимущество в производительности - поэтому не делайте этого.
В любом другом приложении вам определенно не следует использовать общее статическое соединение, поскольку оно не является потокобезопасным.