Executing code before Main
Exploring the ways code can be execute before the Main method is called
Accessing private variables
In certain scenarios private variables can be accessed externally
Using Partitioner to improve parallel processing
How chunking parallel tasks with Partitioner can improve performance
Creating scopes with braces
Creating scopes with braces without any statements
ConcurrentDictionary AddOrUpdate method
ConcurrentDictionary (unlike Dictionary) has a useful AddOrUpdate method
Exploring the new list pattern
Exploring the new list and slice pattern coming with C# 11
Setting readonly variable using init
Readonly variable can be set using an init only setter
Managing multi-thread access with ReaderWriterLockSlim
Using ReaderWriterLockSlim to allow concurrent reading but exclusive writing
Interlocked vs using the lock keyword
How InterLocked can simplify the lock process in certain cases
c# (255)
.net (255)
entityframework (20)
ef (17)
attribute (13)
.net7 (12)
sql (10)
array (9)
performance (9)
string (9)
roslyn (8)
efcore (8)
visualstudio (8)
dictionary (7)
task (7)
linq (7)
exception (6)
list (6)
api (6)
entity framework (6)
tuple (5)
constructor (5)
enum (5)
iteration (5)
DI (5)
dependencyinjection (5)
switch (5)
minimalapi (5)
ienumerable (5)
codefix (5)
code fix (5)
analyser (5)
analyzer (5)
guide (5)
analyzer-series (5)
sourcegenerator (4)
async (4)
lambda (4)
cache (4)
lazy (4)
interpolation (4)
json (4)
property (4)
C#11 (4)
configuration (4)
indexer (4)
anonymous (4)
interface (3)
await (3)
foreach (3)
endpoint (3)
collection (3)
operator (3)
middleware (3)
filter (3)
flags (3)
parallel (3)
entityframeworkcore (3)
func (3)
.net6 (3)
efcore6 (3)
logging (3)
generics (2)
delay (2)
count (2)
length (2)
generic (2)
conversion (2)
cancellation (2)
null (2)
controller (2)
attributes (2)
.net8 (2)
http (2)
query (2)
unsafe (2)
loop (2)
groupby (2)
context (2)
dynamic (2)
distributed (2)
datetime (2)
delete (2)
select (2)
init (2)
initialization (2)
local (2)
implicit (2)
index (2)
new (2)
separator (2)
jagged (2)
querystring (2)
pooling (2)
sort (2)
readonly (2)
parameters (2)
bulk (2)
literals (2)
minimal (2)
sqlserver (2)
nameof (2)
disposable (2)
idisposable (2)
global (2)
parameter (2)
patternmatching (2)
schedule (2)
contenttype (2)
unittest (2)
dbcontext (2)
vs (2)
database (2)
tsql (2)
guid (2)
action (2)
debugging (2)
enumeration (2)
static (2)
goto (2)
private (2)
concurrentdictionary (2)
lock (2)
function (2)
with (2)
syntax (2)
methods (2)
invoke (2)
injection (2)
dependency (2)
generator (2)
extend (2)
using (2)
github (2)
toolkit (1)
sourcegeneratortoolkit (1)
extensionmethod (1)
extension (1)
wrapup (1)
unmapped (1)
arraypool (1)
expressionbody (1)
comparer (1)
ignorecase (1)
methodgroup (1)
accuracy (1)
any (1)
all (1)
elide (1)
name (1)
linkgenerator (1)
iparseable (1)
bind (1)
sql2022 (1)
distinct (1)
mvc (1)
startup (1)
distinctby (1)
stopwatch (1)
benchmark (1)
converter (1)
helpers (1)
convention (1)
holliday (1)
break (1)
frozen (1)
httpmethod (1)
tag (1)
ef7 (1)
unreachable (1)
bytes (1)
memory (1)
allocated (1)
parseable (1)
warning (1)
compiler (1)
featureflag (1)
short (1)
nullcoalescing (1)
associativity (1)
preview (1)
distributedcache (1)
months (1)
convert (1)
localfunction (1)
pattern (1)
builder (1)
compare (1)
comparison (1)
add (1)
addrange (1)
localization (1)
targettype (1)
capacity (1)
record (1)
primitive (1)
path (1)
coalesce (1)
lookup (1)
tolookup (1)
swagger (1)
xml (1)
documentation (1)
filemodifier (1)
dataprotector (1)
protect (1)
math (1)
headers (1)
binding (1)
deserialization (1)
utf8jsonreader (1)
memorycache (1)
statistics (1)
newtonsoft (1)
jsonconvert (1)
datetimeoffset (1)
object (1)
objectpool (1)
httpstatus (1)
statuscode (1)
type (1)
format (1)
app (1)
run (1)
map (1)
server (1)
addresses (1)
features (1)
token (1)
aot (1)
aheadoftime (1)
typed (1)
stronglytyped (1)
expando (1)
propertychanged (1)
update (1)
startupfilter (1)
istartupfilter (1)
commandline (1)
mapping (1)
switchmappping (1)
taskcompletionsource (1)
handler (1)
C11 (1)
stringliterals (1)
lifetime (1)
applicationlifetime (1)
yield (1)
iasyncenumerble (1)
struct (1)
defaults (1)
correlation (1)
activity (1)
default (1)
waitfor (1)
formatting (1)
outputcache (1)
ping (1)
ratelimiter (1)
ratelimiting (1)
iqueryable (1)
namespace (1)
out (1)
delimit (1)
arraysegment (1)
routehandler (1)
virtual (1)
polymorphism (1)
cast (1)
typeof (1)
bit (1)
enumerable (1)
redis (1)
messaging (1)
pubsub (1)
keywords (1)
options (1)
create (1)
interop (1)
os (1)
over (1)
blog (1)
hashicorp (1)
vault (1)
beginner (1)
timer (1)
interval (1)
alignment (1)
activatorutilities (1)
in (1)
modifier (1)
deconstruct (1)
host (1)
required (1)
iconfiguration (1)
wildcard (1)
equality (1)
equals (1)
testing (1)
protected (1)
maybenullwhen (1)
initializer (1)
lowing (1)
forloop (1)
typeconversion (1)
debug (1)
config (1)
pagination (1)
keyset (1)
for (1)
css (1)
html (1)
destruct (1)
currying (1)
layout (1)
expandobject (1)
tryaddenumerable (1)
binary (1)
hexadecimal (1)
newid (1)
nullable (1)
chaining (1)
xmlcomments (1)
collections (1)
insert (1)
aspnetcore (1)
route (1)
first (1)
single (1)
merge (1)
snippet (1)
temporary (1)
files (1)
inference (1)
integers (1)
biginteger (1)
selection (1)
checked (1)
unchecked (1)
overflow (1)
deterministic (1)
directives (1)
breakpoint (1)
exceptiondispatchinfo (1)
failfast (1)
finally (1)
sealed (1)
throw (1)
expressions (1)
queryfilter (1)
interning (1)
linebreak (1)
coalescing (1)
main (1)
execution (1)
accessing (1)
partitioner (1)
listpattern (1)
slicepattern (1)
thread (1)
readerwriter (1)
atomic (1)
interlocked (1)
linkedlist (1)
conditional (1)
numeric (1)
check (1)
is (1)
covariance (1)
contravariance (1)
offset (1)
fetch (1)
closure (1)
method (1)
underscore (1)
validity (1)
expression (1)
switchexpression (1)
ducktyping (1)
loading (1)
debugger (1)
display (1)
debuggerdisplay (1)
tostring (1)
delegate (1)
incremental (1)
incrementalgenerator (1)
getenumerator (1)
optional (1)
system.text.json (1)
notifications (1)
column (1)
order (1)
columnorder (1)
interceptor (1)
interceptors (1)
entitytypeconfiguration (1)
gc (1)
garbagecollection (1)
garbage (1)
wait (1)
directive (1)
when (1)
metadata (1)
call stack (1)
channel (1)
queue (1)
producer (1)
consumer (1)
deploy (1)
scheduler (1)
cron (1)
valuetuple (1)
dailydrop (1)
ioptions (1)
ioptionssnapshot (1)
ioptionsmonitor (1)
optionspattern (1)
records (1)
ILogger (1)
structuredlogging (1)
serilog (1)
structured (1)
logger (1)
git (1)
gitflow (1)
githubflow (1)
workflow (1)
azuredevops (1)
nuget (1)
devops (1)
package (1)
symbol (1)
symbolserver (1)
sourcelink (1)
dbset (1)
dependency injection (1)
rollcall (1)
transient (1)
singleton (1)
scoped (1)
multiple implementation (1)
implementation (1)
multiple (1)
ide (1)
productivity (1)