|
|
Opslået påI går kl. 20:48
|
|
|

Krav: Nogle data tillader beskidt læsning, såsom artikelindhold, sidevisninger, kommentarer osv., hvilket ikke er lige så grundigt som finansielle data. For at forbedre forespørgselsydelsen kan ReadUncommitted-transaktioner bruges, men SqlTransaction og TransactionScope har lækage-isolations-fejl, som endnu ikke er blevet rettet, så overvej at bruge WITH (NOLOCK)-løsningen.
Anmeldelse:
SqlTransaction- og TransactionScope-lækisoleringsniveauer (denne fejl har eksisteret i 8 år og er stadig ikke blevet rettet!) Jeg vurderer, at mange måske bliver påvirket, men måske ikke er klar over det):Hyperlink-login er synlig.
Denne artikel skal referere til SqlScriptDOM til at parse SQL-sætninger og tilføje WITH(NOLOCK). Se open source-projektet:Hyperlink-login er synlig.
Nuget-citater som følger:
Opret en ny AllowDirtyReadAttribute.cs funktion, kode som følger:
Opret en ny WithNoLockInterceptor for at tilsidesætte visse metoder i DbCommandInterceptor. Koden er som følger:
Indsprøjt i EF Core med følgende konfiguration:
Brug den til at tilføje det over controller-metoden[TilladtDirtyRead]Dåse.
Rå SQL-sætning:
VÆLG [o]. [ID], [o]. [KundeNavn], [o0]. [ID], [o0]. [OrderId], [o0]. [Produkt] FRA [Ordrer] SOM [o] VENSTRE YDRE SAMLING [Ordrelinjer] AS [o0] ON [o]. [Id] = [o0]. [OrderId] HVOR [o]. [id] = 1 ORDRE EFTER [o]. [Id]; Sætning genereret efter tilføjelse af NOLOCK:
VÆLG [o]. [ID], [o]. [KundeNavn], [o0]. [ID], [o0]. [OrderId], [o0]. [Produkt] FRA [Ordrer] SOM [o] MED (NOLOCK) VENSTRE YDRE SAMLING [Ordrelinjer] SOM [O0] MED (NOLOCK) ON [o]. [Id] = [o0]. [OrderId] HVOR [o]. [id] = 1 ORDRE EFTER [o]. [Id]; |
Tidligere:(MSSQL) SQL Server fuldtekstsøgning, fuldtekstindeks
|