До обновления до .Net Core 3.0 (было на 2.2) мне удалось передать параметр SyntaxKind.EndofFileToken в точку с запятой в методе SyntaxFactory.MethodDeclaration, но после обновления до 3.0 теперь я получаю исключение времени выполнения… System.ArgumentException: точка с запятой.
Я могу изменить SyntaxKind на SemiColonToken, но затем получаю нежелательную точку с запятой.
SyntaxFactory.MethodDeclaration(attributeLists: SyntaxFactory.List<AttributeListSyntax>(),
modifiers: modifiers,
returnType: SyntaxFactory.ParseTypeName("void"),
explicitInterfaceSpecifier: interfaceSpecifier,
identifier: SyntaxFactory.Identifier("On" + method.Name.Replace(" ", "")),
typeParameterList: null,
parameterList: parameterList,
constraintClauses: SyntaxFactory.List<TypeParameterConstraintClauseSyntax>(),
body: SyntaxFactory.Block()
.WithOpenBraceToken(
SyntaxFactory.Token(SyntaxKind.OpenBraceToken))
.WithCloseBraceToken(
SyntaxFactory.Token(SyntaxKind.CloseBraceToken)),
semicolonToken: SyntaxFactory.Token(SyntaxKind.EndOfFileToken)).NormalizeWhitespace();
Я получаю исключение времени выполнения… System.ArgumentException: 'semicolonToken'.