Azure / Azure/data-api-builder

[Refactor] Move to file-scoped namespaces

Open
#1,595 1 comment 1 reaction 0 assignees View on GitHub
cleanup good first issue hacktoberfest improvement
Dominant language
C#
Stars
1.5k
Forks
370
Avg merge
3d 17h
Merged PRs (30d)
8

Description

C# introduced [file scoped namespaces](https://learn.microsoft.com/dotnet/csharp/language-reference/proposals/csharp-10.0/file-scoped-namespaces) which means that instead of writing this:

```c#
namespace Some.Namespace {
public class SomeType {
public int SomeProperty { get; set; }
}
}
```

We can write this:

```c#
namespace Some.Namespace;

public class SomeType {
public int SomeProperty { get; set; }
}
```

With this, members of a namespace are at the same level as the namespace declaration, reducing the amount of whitespace in a file and aligning with more of how modern C# examples are written.

This can be enforced with an `.editorconfig` rule:

```
[*.cs]
csharp_style_namespace_declarations = file_scoped:warning
```

The refactor is straight forward, navigate to the `namespace` declaration in the file and add a `;` to the end of the line, VS will perform the rest of the refactoring for you.

Undertaking this can be done piece by piece and considered as part of general code hygiene.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.