"Opening" a new connection for each operation is not resource-intensive, as you might think.
The reason for this is that all ADO.NET providers today use the connection pool internally. This means that every time you .Close() connection, it really just returns to the pool.
Performance degradation occurs when you start attracting multiple transactions in a transaction, as this means that the transaction is being promoted to a distributed transaction. That is, a third-party transaction operator is involved and controls the transaction.
So, the answer is that while your entities do not have dependencies, there is no reason to start with transactions or stop using multiple connections.
When are transactions required?
However, if object A depends on object B, you must use transactions.
Dependencies may also be specified by business rules. Take an example.
You have a bank transfer, when money must be withdrawn from account A and deposited to account B. Without a transaction, money can be withdrawn from account A, but will not be deposited to B (due to an error).
source share