dotnet/roslyn

With Operator not properly supported in C# Script

Aberta

#53.670 aberto em 25 de mai. de 2021

 (7 comentários) (0 reação) (0 responsável)C# (4.257 forks)batch import
Area-InteractiveConcept-Continuous Improvementhelp wanted

Métricas do repositório

Stars
 (20.414 estrelas)
Métricas de merge de PR
 (Mesclagem média 6d 17h) (256 fundiu PRs em 30d)

Description

Version Used: 3.9.0

Steps to Reproduce: Execute the following script: var script = @" public record MyRecord{public int I{get;set;}} var instance = new MyRecord(); instance with {I = 2}"; await CSharpScript.EvaluateAsync(script)

Expected Behavior: Script should compile without problems.

Actual Behavior: Compilation error: (4,16): error CS1014: A get or set accessor expected

With parenthesis it works:

var script = @" public record MyRecord{public int I{get;set;}} var instance = new MyRecord(); (instance with {I = 2})"; await CSharpScript.EvaluateAsync(script)

The situation is even worse when trying to use records as fluent API: await (builder with {OptionA = 1}).ExecuteAsync(), cannot be made to work at all, no matter with which parenthesis used.

Guia do colaborador