-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Allow users to always use transactions with SaveChanges (#28711)
Obsoletes AutoTransactionsEnabled, replacing it with a new 3-valued enum. Closes #27574
- Loading branch information
Showing
9 changed files
with
319 additions
and
136 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
|
||
namespace Microsoft.EntityFrameworkCore; | ||
|
||
/// <summary> | ||
/// Indicates whether or not a transaction will be created automatically by <see cref="DbContext.SaveChanges()" /> if a user transaction | ||
/// wasn't created via 'BeginTransaction' or provided via 'UseTransaction'. | ||
/// </summary> | ||
public enum AutoTransactionBehavior | ||
{ | ||
/// <summary> | ||
/// Transactions are automatically created as needed. For example, most single SQL statements are implicitly executed within a | ||
/// transaction, and so do not require an explicit one to be created, reducing database round trips. This is the default setting. | ||
/// </summary> | ||
WhenNeeded, | ||
|
||
/// <summary> | ||
/// Transactions are always created automatically, as long there's no user transaction. This setting may create transactions even | ||
/// when they're not needed, adding additional database round trips which may degrade performance. | ||
/// </summary> | ||
Always, | ||
|
||
/// <summary> | ||
/// Transactions are never created automatically. Use this options with caution, since the database could be left in an inconsistent | ||
/// state if a failure occurs. | ||
/// </summary> | ||
Never | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.