Command conventions in Caliburn.Micro

If you’ve ever spoken to me personally at a convention or a user group (I’ll be at NDC Sydney if next week, comes say hello) then you may have heard me talk about disliking command objects in MVVM.

Controlling the output path in Visual Studio 2017

One thing you’ll notice if you’re experimenting with the new csproj project structure used in .NET Standard is the difference in Output Path. Typically the default output path for a new full .NET Framework assembly would be bin\$(Configuration)\ resulting in bin\Debug\ and \bin\Release\. In .NET Standard projects by default this output path isn’t defined in the csproj but defaults to much the same except that the Target Framework is also appended to the path. So for example if I created a new project targeting .NET Standard 1.4 like follows:

Generation of Assembly Info in Visual Studio 2017

One feature of the new csproj format (is there an official name for these?) that I wasn’t aware of is the automatic generation of the assmebly: attributes we would normally see in AssemblyInfo.cs. This can catch you by surprise with some odd errors, especially when migrating existing projects to the format.

Adding functionality to Caliburn.Micro conventions

The binding conventions in Caliburn.Micro can be extended to do almost anything you want. The method ConventionManager.AddElementConvention<T> returns a ElementConvention which can be further customised. In this post I’ll show what things we can do with this by modifying the ElementConvention.ApplyBinding action.

Speaking at NDC Sydney

Really proud to say that I’ll be speaking in August at NDC Sydney on Techniques in creating great cross platform apps.. This talk will be a spiritual successor to last years talk where I’ll cover some of the newer code sharing options in Visual Studio 2017 and expanding on the ideas of the view model composition that Caliburn.Micro supports.