CDCoding Dropletsincodingdroplets.com·1d ago · 10 min readPreventing Path Traversal in ASP.NET Core File Download APIsEvery API that serves a file eventually grows an endpoint that takes a filename from the client. It ships as a two-line convenience, it works, and it becomes the most dangerous route in the service. P00
CDCoding Dropletsincodingdroplets.com·2d ago · 11 min readUnable to Resolve Service for Type in ASP.NET Core: Causes and FixesYou start the API, hit any endpoint on a controller, and the request dies before a single line of your code runs: System.InvalidOperationException: Unable to resolve service for type 'MyApp.Applicatio00
CDCoding Dropletsincodingdroplets.com·3d ago · 11 min readMigrating from MediatR to Wolverine in .NET: A Step-by-Step GuideIf your team is planning to migrate MediatR to Wolverine, the good news is that the mechanical part is far smaller than it looks. MediatR handlers are already single-responsibility classes with one me00
CDCoding Dropletsincodingdroplets.com·4d ago · 11 min readMaximum Context Length Exceeded in .NET AI APIs: Causes and FixesThe chat endpoint works fine in testing. It works fine for the first dozen messages in a real conversation. Then a user who has been going back and forth all afternoon sends one more message and gets 00
CDCoding Dropletsincodingdroplets.com·6d ago · 10 min readPrompt Versioning in .NET AI APIs: Treating Prompts as CodeSomeone changes eleven words in a system prompt, quality drops for a subset of requests, and nobody can say when it happened or what the previous wording was. That is the failure that makes prompt ver21K