作者:Leslie Richardson
排版:Alan Wang
如果您现在正在使用 Razor 构建 Web 应用,我们为您带来了一些令人兴奋的新功能,无论使用的是 Visual Studio 还是 Visual Studio Code,您都会爱上这些新功能!现在,您可以使用名为“提取为组件”的重构功能,以及全新的基于 Roslyn 的 C# 分词器,这些功能旨在提升您在 Razor 文件中的开发效率。让我们一起来看看吧!
提取为组件
提取为组件是 Visual Studio 17.12 中提供的一项全新重构功能,它可以自动化创建新的 Razor/Blazor 组件的过程。您无需手动创建新文件并复制/粘贴代码,只需选中想要提取的代码(或标签),然后按下(Ctrl + .
)调出灯泡重构选项,选择此功能即可完成提取操作。该功能让创建可复用组件变得更加简单,有助于保持代码整洁,提高可维护性。
在该功能的首个版本中,提取为组件功能主要支持基础的、以 HTML 为主的代码提取场景。不过,我们计划在未来添加更多改进和支持更高级的场景(例如更一致地处理涉及变量依赖、C# 代码、参数等的提取)。
Roslyn C# 分词器
C# 分词器/词法分析器的更新显著提升了 Razor 对 C# 代码的处理能力。许多用户曾对无法在 Razor 文件中使用原始字符串字面量和逐字插值字符串表示不满,而新的 Roslyn C# 词法分析器解决了这一问题!除了对这些字符串格式的支持外,词法分析器还增加了对二进制字面量的支持,并改进了对 C# 预处理器指令的处理,确保它们遵循 C# 的规则。最后,新的词法分析器还将更容易支持未来的 C# 新语言特性。
这个新的词法分析器在 .NET 10 中默认启用,但在 .NET 9 中也可用于 Visual Studio(17.13)和 Visual Studio Code。如果您想立即启用 C# 分词器,请勾选 IDE 中的为 Razor 文件使用 C# 分词器选项,该选项位于工具 > 选项 > 预览功能,并在您的 .csproj
或 directory.props
文件中的属性组内添加以下内容:
<Features>use-roslyn-tokenizer;$(Features)</Features>
新的词法分析器目前带来了一些重大变化,特别是在预处理指令方面。因此,我们鼓励您在 Razor GitHub 代码库中反馈遇到的任何相关问题。
总结
这两项更新——提取为组件和 C# 分词器——将帮助提升您的 Razor 开发效率。通过使用这些新功能,您可以确保代码更加清晰、获得更好的语言支持,并提高整体开发效率。当然,我们仍在不断改进!如果您有任何反馈,欢迎在 Razor GitHub 代码库 或 开发者社区(Developer Community)提交问题,或者参与此调查分享您对提取为组件功能的意见!最后,如果您希望了解我们的未来规划以及我们如何解决您的问题,欢迎观看我们在2月18日 举办的 .NET 社区直播!