dotnet/roslyn

Add an option for c# override generation (ignoring expression bodied members)

Open

#38,514 opened on Sep 5, 2019

View on GitHub
 (3 comments) (0 reactions) (0 assignees)C# (4,257 forks)batch import
Area-IDEDeveloper CommunityIDE-CodeStylehelp wanted

Repository metrics

Stars
 (20,414 stars)
PR merge metrics
 (Avg merge 6d 17h) (256 merged PRs in 30d)

Description

This issue has been moved from a ticket on Developer Community.


when override SomeVirtualOrAbstractMethod is expanded, and Options->Text Editor->C#->Code Style->Use expression body for methods is set to "When on single line", the generated piece of code looks like this:

protected override SomeVirtualOrAbstractMethod() => base. SomeVirtualOrAbstractMethod();

this is (in most cases) not wanted, since the reason to override a method is to add custom behaviour (and usually also call the base class)

Thus the suggestion should be that an option is added to explicitely have the override expansion generated normal member bodies, generating this code:

protected override SomeVirtualOrAbstractMethod()
{
    base. SomeVirtualOrAbstractMethod();
}

Original Comments

Jane Wu [MSFT] on 8/16/2019, 00:30 AM:

Contributor guide