将string.Format方法调用转换为C#插值字符串

将string.Format方法调用转换为C#插值字符串,c#,string,C#,String,我知道我可能应该不去管代码库(原则:如果代码库没有坏掉的话…),但是有问题的代码库有很多对string.Format()的调用,我对C#6.0中新的插值字符串支持很感兴趣,因为它可能使{0}替换不那么容易出错。我的目标是检测并删除可能有一个未使用的string.Format()参数的执行路径,或者更糟的是,一个对不存在的参数的未经证实的引用(例如,{1},如果只有一个参数) 是否存在可能有助于将所有字符串文本从一种格式转换为另一种格式的工具或代码段?我同意开始使用*.cs文件,XAML绑定的替代

我知道我可能应该不去管代码库(原则:如果代码库没有坏掉的话…),但是有问题的代码库有很多对string.Format()的调用,我对C#6.0中新的插值字符串支持很感兴趣,因为它可能使{0}替换不那么容易出错。我的目标是检测并删除可能有一个未使用的string.Format()参数的执行路径,或者更糟的是,一个对不存在的参数的未经证实的引用(例如,{1},如果只有一个参数)

是否存在可能有助于将所有字符串文本从一种格式转换为另一种格式的工具或代码段?我同意开始使用*.cs文件,XAML绑定的替代品可能会在以后出现


这个练习是否相对安全(即,插入字符串是否存在一些我没有考虑的明显缺陷?

只有一个建议。。不管你用什么工具,请在更改之前添加单元测试,或者如果它们已经存在,请确保在您进行更改之后没有破坏它们:)您可以使用Roslyn framework编写自己的DiagnosticanAnalyzer。ReSharper能够执行这种重构和分析。@Kyle我知道ReSharper支持这一点,但有没有办法做到这一点代码清理还是只是一个快速修复?如果有代码清理设置,我会对如何设置感兴趣。