Improved intellisense for object initialization and records?
Having intellisense is great for discoverability but in its current implementation, there's room for improvement. I believe you mentioned that it's using the Roslyn APIs to provide this info so I would have thought this would have been automatic. Perhaps needs some adjustments?
Object initialization:
Intellisense only works for properties if you are adding to the end of the list of members. Anything other than the last stops showing anything at all.
void Main() { var someAccount = new SomeAccount { // doesn't work Email = "john.doe@email.com", // works fine }; } public class SomeAccount { public long Id; public string Email; public string FirstName; public string LastName; }
Records and with
expressions:
In a with
expression for a record, there is no intellisense support it seems, everything is returned.
void Main() { var someAccount = new SomeAccount(123, "john.doe@email.com", "John", "Doe"); var newAccount = someAccount with { // not much help here }; } public record SomeAccount(long Id, string Email, string FirstName, string LastName);
Comments
Thanks - these cases should be fixed in 7.4.7.