roslyn

Introducing the Source Generator Toolkit

Source Generators made easier!


Read more...


Incremental source generators

Generate code, to be used in code, to generate additional code


Read more...


Customize source generator output location

How to emit source generated files to be included in source control


Read more...


Roslyn Analyzer - tips and tricks (Part 5)

A collection of tips and tricks for writing analyzers


Read more...


Roslyn Analyzer - testing an analyzer and code fix (Part 4)

A step by step guide to testing an analyzer and code fix


Read more...


Roslyn Analyzer - writing the code fix (Part 3)

A step by step guide to writing an analyzer code fix


Read more...


Roslyn Analyzer - writing the analyzer (Part 2)

A step by step guide to writing an analyzer


Read more...


Roslyn Analyzer - explained (Part 1)

An introduction to Roslyn Analyzers, what they are and how they are useful


Read more...


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)