I want to use a Resharper structural search and replace template to automatically replace examples of this:
new Fruit { Name = "Apple", IsTasty = true }
With this:
new Fruit("Apple", true)
(Note, the required constructor already exists)
I've tried various combinations like this:
new $type$ { Name = $name$, IsTasty = $isTasty$ };
...using various different Placeholder types, but R# doesn't find any of the examples in my code. Has anyone done this before?
So I just did this in resharper (9.0.2 I think)
Create pattern: FruityChange
with class Fruit
public class Fruit
{
public Fruit(string name, bool isTasty)
{
Name = name;
IsTasty = isTasty;
}
public string Name { get; set; }
public bool IsTasty { get; set; }
}
And that underlined the expression in the code editor and alt-tab gave me the "Replace With" option for it. It at least works on my machine :-)
By default, it seems R# treats your placeholders as identifiers, and the pattern match fails.
Double-click each placeholder on the right side, and change "identifier" to "expression".
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With