VS代码生成工具ReSharper V2022.1新功能亮点——更好地支持C#

ReSharper V2022.1 在性能上得到了很大提升,并带来了许多改进和错误修复,特别是在 Blazor 开发和 支持C# 方面。

支持C#

继续改进对 C# 10 的支持,尤其是 全局使用。我们已经实现了两个新的重构,它们也可用作上下文操作。

Extract Global Using可以帮助用户在项目中引入全局使用的概念。可以在常规指令上调用它using,ReSharper 会建议将其提取到指定GlobalUsings.cs 文件中(如果项目中还没有这样的文件,则会创建它),using不再需要 的常规 将从项目中的文件中删除。

VS代码生成工具ReSharper

如果将全局重构using为常规 using,使用重构的内联全局也可以提供帮助。当在 global 上调用时using,它会将其从 中删除, GlobalUsings.cs并将相应的using 语句添加到项目中需要的文件中。

VS代码生成工具ReSharper

Find Usages 和扩展方法的代码分析 支持全局 using 功能。

VS代码生成工具ReSharper

研究了即将到来的 C# 11 和支持的 通用属性。

VS代码生成工具ReSharper
可空引用类型
  • 针对不应为空的表达式的空检查的警告分为两类。第一个警告是针对从不为空的表达式,第二个警告是针对存在实际运行时检查 null 的表达式。
  • 添加了一个新设置,用于切换到 运行时强制非空警告模式。可从Alt+Enter菜单 中的配置项组访问基于注释的警告。
  • [MemberNotNull]和[MemberNotNullWhen]注释现在在不使用可为空引用类型的项目中得到支持。
  • VS代码生成工具ReSharper
端点

端点现在支持适用于 ASP.NET Core 6 最小 API 和基于约定的路由。

VS代码生成工具ReSharper
Razor 和 Blazor
  • 添加了对[EditorRequired].NET 6 中新属性的支持。
  • 已经在 Razor 语法中实现了对 C# 本地函数的支持。
  • 改进了.razor带有 Blazor 组件的文件中的代码清理。它不再删除所有@using声明。
  • 通过对 Blazor 组件的引用修复了 Razor 代码中的If To Switch和Invert If上下文操作。
  • ReSharper 现在为 Blazor 注入的属性使用正确的命名样式。
  • Comment with Line Comment操作 现在仅注释 Razor 代码部分。
  • 在 Razor 代码中添加了通过继承层次结构的导航。

VS代码生成工具ReSharper
Razor 和 Blazor

重新组织了Alt+Enter 菜单中与代码清理和格式化相关的所有项目。Format selection、Cleanup selection和Apply 语法样式被组合成一个Reformat 和 Cleanup项, 以提供一个入口点。

VS代码生成工具ReSharper

除了这些更改之外,语法样式设置现在可在“配置代码样式”和“自动检测代码样式设置” 操作中使用。预览代码样式面板也显示了语法样式的变化。

VS代码生成工具ReSharper
虚幻引擎单元测试

现在 支持虚幻引擎测试框架 。ReSharper C++ 发现 Unreal Engine 单元测试,并在编辑器中的每个测试旁边添加相应的操作指示器,以运行或调试测试或整个测试套件。在单元测试会话 窗口中,可以查看测试结果,并重新运行失败的、所有的或特定的测试。

VS代码生成工具ReSharper
更好的 支持C++

ReSharper最新版本 C++ 现在更擅长处理隐式构造函数调用,允许在更多情况下查找用法并导航到调用的构造函数,包括以下情况:

  • 标准 ( make_unique/make_shared) 和 Unreal-specific ( MakeShared/MakeUnique) 智能指针创建函数。
  • emplace- 类似容器方法。
  • static_cast和 c 风格的强制转换表达式。

emplace当使用不正确的参数调用类似函数 时,ReSharper C++ 2022.1 还会向您显示重载警告 。

VS代码生成工具ReSharper
源生成器

在分析了源生成器支持的性能后,在从编译器获取源生成的文档时增加请求之间的延迟。因此,源代码生成器不会在编译器之前运行,从而减少了 CPU 工作总量。确切的性能增益取决于是否有任何其他功能也触发生成器,例如 Visual Studio 的全行完成。

表现

已经修复 了一些性能问题 ,并为更多问题奠定了基础。这包括处理来自客户的性能快照、内部分析会话以及收集数据以希望在未来实施自动检查以检测性能下降。

ReSharper 命令行工具

InspectCode 工具可以生成与静态分析结果交换格式( SARIF ) 兼容的输出文件。命令行工具现在支持Alpine Linux。

VS代码生成工具ReSharper
反编译器
  • 集成的反编译器现在显示平台程序集的 XML 文档注释,包括名称与 XML 文档文件名称不同的程序集,例如System.Private.CoreLib. XML 文档的路径现在显示在反编译文件的标题中。
  • 在元数据视图中关闭了导航重定向。
  • 在 blob 节点的属性中添加了解码/原始 blob 表示。
  • Assembly Explorer 现在支持转发类型( [TypeForwardedTo]属性)。在元数据中定位操作 也适用于转发的类型、程序集和模块引用以及资源。
  • 改进了没有序列点的类型的 PDB 导航,例如接口和枚举。

VS代码生成工具ReSharper
改进了对 SQL Server 事件( dotUltimate的支持)

Microsoft.Data.SqlClient现在 dotTrace 支持来自Windows(.NET Core、.NET 5+)以及 macOS 和 Linux(.NET Core 3.0+、.NET 5+)上 的提供程序的 SQL Server 事件 。

VS代码生成工具ReSharper
通过拖放( dotUltimate附加到应用程序)

现在只需将特殊图标拖到应用程序窗口上,即可将分析器附加到已运行的应用程序。

(使用注释dotUltimate)从覆盖分析中排除代码

您现在可以使用注释从覆盖分析中排除某些行或代码块。有几个选项可用于此:

// dotcover disablevar i = 1;var j = 10;// dotcover enable/* dotcover disable */ var i = 1; /* dotcover enable */var i = 1; // dotCover disable this line// dotcover disable next linevar j = 100;

要使这些选项中的任何一个起作用,必须引用该 JetBrains.dotCover.MSBuild NuGet包。这是一个仅用于开发的依赖项,不会作为运行时依赖项包含在项目中。

VS代码生成工具ReSharper
其他更新
  • 对文件重构的移动类型进行了改进,其中还包括上下文操作和快速修复。现在,在常见情况下,预处理器指令与类型一起移动。
  • 已经修复了“大量文件系统更改”问题。
  • 已经解决了阻碍 ReSharper.sqlproj 在本地化 Visual Studio 文件中的功能的问题。
  • 已将元数据树视图添加到 ReSharper(仅适用于 Visual Studio 2022)。它允许您浏览程序集元数据中的所有项目,并提供搜索、导航到源等。
  • 已经通过“ReSharper 在切换 Git 分支时显示红色代码”解决了几个长期存在的问题。

VS代码生成工具ReSharper

ReSharper| 下载试用

以上就是ReSharper V2022.1更新的新功能的相关内容,想要了解ReSharper价格可进入官网咨询在线客服。

ReSharperVS代码生成工具。实质上,ReSharper特征可用于C#,VB.net,XML,Asp.net,XAML,和构建脚本。 使用ReSharper,你可以进行深度代码分析,智能代码协助,实时错误代码高亮显示,解决方案范围内代码分析,快速代码更正,一步完成代码格式化和清理,业界领先的自动代码重构,高级的集成单元测试方案,和强大的解决方案内导航和搜索。

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年3月17日
下一篇 2022年3月17日

相关推荐

发表回复

登录后才能评论