400 (Bad Request) when pushing a package to Octopus Deploy using nuget push

Stumbled on a little gotcha today when using nuget packages as deployment artifacts to be send to Octopus Deploy and thought it worth documenting so i don’t forget next time. The quick answer is that you cannot push the same package and version to the built in octopus deploy package repository - if you try you get 400 (Bad Request). Our build process goes a little like this: Install the Octopack nuget package in each deployable project in the solution Compile the solution using Teamcity and msbuild, specifying the octopack build property to output packages msbuild MySolution....

May 4, 2016 · 2 min · 242 words · Alastair Crabtree

Sites worth reading for .net developers | Mar 2016

Some stuff I have read in the last couple of weeks that I think are worth checking out, mostly new but some old stuff too. All worth subscribing to. ASP.NET Core is approaching its full release and the polish is starting to shine. Using Kestral it passed node in some benchmark perf a while back, and now it’s getting silly. 1 million requests a second | ageofascent.com 3 top notch free videos from Thoughtworks and Martin Fowler, especially the last one on microservices....

March 16, 2016 · 2 min · 298 words · Alastair Crabtree

Sites worth reading for .net developers | Feb 2016

Some stuff I have read in the last couple of weeks that I think are worth checking out, mostly new but some old stuff too. All worth subscribing to. The command line tooling shipped with git for windows is pretty useful, even if you are not using git itself. I often find myself dropping into the bash shell for ls, touch, less, and grep and Matt Wrock gives another useful tip....

February 29, 2016 · 2 min · 320 words · Alastair Crabtree

QuickTip: Comparing strings in c# ignoring case? ToLower() is not the answer.

When doing a code review I often see code comparing two strings where the developer wants the comparison to be case insensitive and chose to use ToLower() or ToUpper() and == to get the job done. However because the dot net framework handles different cultures just using ToUpper/Lower could produce unpredictable results depending on the config of the machine your code is running on. Instead you should use the OrdinalIgnoreCase option on string....

January 11, 2016 · 1 min · 99 words · Alastair Crabtree