Contributing
Last updated
Was this helpful?
Last updated
Was this helpful?
DO use is a Visual Studio extension to automatically clean up your code on saving the file.
CodeMaid is a non-intrusive code cleanup tool. Wasabi's CodeMaid settings , and are automatically picked up by Visual Studio when you open the project. Assuming the CodeMaid extension is installed. Unfortunately CodeMaid has no Visual Studio Code extension yet. You can check out the progress on this .
DO follow .
Place the comment on a separate line, not at the end of a line of code.
Begin comment text with an uppercase letter.
End comment text with a period.
Insert one space between the comment delimiter (//
) and the comment text, as shown in the following example.
Do not create formatted blocks of asterisks around comments.
DO NOT use mix awaitable and non-awaitable locks.
DO use is null
instead of == null
. It was a performance consideration in the past but from C# 7.0 it does not matter anymore, today we use this convention to keep our code consisent.
DO NOT block with .Result, .Wait(), .GetAwaiter().GetResult()
. Never.
async void
DO NOT async void
, except for event subscriptions. async Task
instead. DO try catch
in async void
, otherwise the software can crash.
DO dispose your subscription if you are referencing another object. DO use the .DisposeWith()
method.
DO NOT dispose your subscription if a component exposes an event and also subscribes to it itself. That's because the subscription is manifested as the component having a reference to itself. Same is true with Rx. If you're a VM and you e.g. WhenAnyValue against your own property, there's no need to clean that up because that is manifested as the VM having a reference to itself.
DO use ObservableAsPropertyHelper
with WhenAny
when a property's value depends on another property, a set of properties, or an observable stream, rather than set the value explicitly.
DO follow .
DO follow .