gpt4 book ai didi

c# - 如何自动将 C# 内插字符串重构为 string.Format(...)?

转载 作者:行者123 更新时间:2023-11-30 16:06:52 26 4
gpt4 key购买 nike

最近在 C# 6 中引入了一种名为字符串插值的新语言元素/语法糖。

然而,在享受了几分钟这种语法的甜头之后,很快就会发现,由于嵌入的变量,内插字符串(从语义的角度来看仍然是字符串文字)无法重构为资源仅存在于定义内插字符串的范围内。

例如,这个范围锁定的字符串文字无法本地化,无论本地化需要如何,一些代码质量检查器过去常常将嵌入的字符串文字视为代码异味。

与庞大的企业代码库打交道,我预计会出现越来越多的内插字符串,因此问题会很快从理论转向实际。我两个都想要

  • 有一个代码质量检查器规则来禁止这种做法就像代码中间的字符串文字(我可以管理它,通过在标准质量工具中定义自定义规则。尽管 StyleCop 目前甚至无法识别它们,并运行到内部错误,所以这并不像听起来那么容易)
  • 有一个重构工具可以重构什么字符串插值到 string.Format 这样就可以很容易地重构为标准 .NET 资源。

任何建议

最佳答案

启用代码分析可防止使用内插字符串(警告 CA1305),因为它们不支持指定语言环境(与 String.Format 不同)。因此,虽然有些尴尬,但这是针对您的特定情况的可能解决方案。

此外,R# 还可以快速将一种格式转换为另一种格式 - 因此,虽然代码分析和 R# 不是自动组合,但您可以快速找到并部分纠正所有情况。

关于c# - 如何自动将 C# 内插字符串重构为 string.Format(...)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31648824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com