44 Beitrag/Beiträge
Mittwoch, 15. April 2026
Der angenehmste Nebeneffekt der IChatClient-Abstraktion ist, dass ein lokales Modell dahinter genauso aussieht wie ein entferntes. Das macht den Versuch billig.
Weiterlesen...Mittwoch, 25. März 2026
Der häufigste Fehler im Umgang mit CancellationToken ist, ihn entgegenzunehmen und dann nicht weiterzugeben:
Weiterlesen...Donnerstag, 19. März 2026
<Nullable>enable</Nullable> in ein zehn Jahre altes Projekt zu schreiben, erzeugt bei mir 3.400 Warnungen. Die übliche Reaktion darauf ist, den Schalter wieder zu entfernen.
Weiterlesen...Dienstag, 17. März 2026
Seit C# 12 gibt es Primärkonstruktoren auch für normale Klassen:
Weiterlesen...Dienstag, 03. März 2026
Für ein Erzeuger-Verbraucher-Muster habe ich früher BlockingCollection genommen, was blockierend ist und mit async nicht zusammenpasst.
Weiterlesen...Dienstag, 17. Februar 2026
Für kleine, unveränderliche Werte ist record bequem, allokiert aber auf dem Heap. Bei einem Typ, der millionenfach durch eine Schleife läuft, ist das spürbar.
Weiterlesen...Montag, 09. Februar 2026
Zwei Implementierungen desselben Interfaces waren im eingebauten Container immer unangenehm. Man brauchte eine Factory oder ein Marker-Interface.
Weiterlesen...Donnerstag, 05. Februar 2026
Wer im letzten Jahr Agenten in .NET bauen wollte, stand vor der Wahl zwischen Semantic Kernel und AutoGen, wobei beide von Microsoft kamen und beide dasselbe Problem lösen sollten. Diese Doppelung ist jetzt beendet: Das Microsoft Agent Framework führt beide zusammen und hat den Release Candidate erreicht.
Weiterlesen...Montag, 02. Februar 2026
Jahrelang hat man auf ein object gesperrt, weil es nichts Besseres gab:
Weiterlesen...Freitag, 09. Januar 2026
Ein kleines Werkzeug, das Logdateien durchsucht, braucht bei mir zwei Zehntelsekunden für die Arbeit und eine halbe für den Start der Laufzeit. Bei einem Aufruf ist das egal, in einer Schleife über zweihundert Dateien nicht mehr.
Weiterlesen...