With Operator not properly supported in C# Script
#53.670 aberto em 25 de mai. de 2021
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.