.NET工具 发布

ReSharper 2021.3启动早期访问程序!

ReSharper 2021.3的早期访问程序已经启动!收到建造今天!

支持为Visual Studio 2022预览

大约一个月前,我们与为Visual Studio 2022预览支持早期发布的版本。据来自用户的反馈,ReSharper的工作速度在Visual Studio的新版本的x64。到现在为止还挺好!

最后,我们决定将此支持推到2021.3发布周期。v2021.3的第一个EAP版本已经具有VS2022预览包括支持。在VS2022预览版本中运行ReSharper无需下载并安装单独的版本–只需选择VS2022预览dotUltimate 2021.3 EAP安装程序中的图标。

语言支持

C#10

C#10即将推出,ReSharper继续添加一些即将推出的功能。今天,我们很高兴添加对文件范围名称空间和全局使用的支持。

让我们从文件范围的名称空间开始。除了支持新语法本身之外,我们还添加了一个新的语法风格选择权(ReSharper |选项|代码编辑| C#|语法样式|代码体|名称空间),以帮助您选择所需的样式。当你选择样式时,ReSharper会显示你对那些需要按照样式进行修改的代码的检查,并为你提供适当的快速修复建议。您可以通过单击一次将修复程序传播到整个项目甚至整个解决方案。

如果你想恢复到以前的语法格式的代码,有两个方面的行动:“转换为文件范围的命名空间”和“转换为块作用域的命名空间。“

现在,让我们快速了解一下全局用法全球的关键字,并使用这些usings在项目中的所有代码文件正确解析符号。如果解决方案宽误差分析为ON,ReSharper的将突出其在该项目中为未以适当的快速修复建议删除声明没有用途的全球usings。ReSharper的也将如果全球通知你使用已被放置在文件中错误的地方。

代码分析

人们从其他资源复制代码片段并不罕见,例如stackoverflow.com.现在,c#中有了可为空的引用类型,一些代码示例已经包含了NRT语法。但是,如果您的解决方案中没有启用NRT呢?为了帮助你在将这些代码粘贴到你的项目后摆脱这种语法,ReSharper有两个新的快速修复:替换为JetBrains.Annotations属性删除不带“#nullable”上下文的可空批注

我们增加了一些新的快速修复和上下文动作静止的带闭包的本地/匿名函数:

  • 快速修复,允许关闭,删除静止的本地函数或匿名函数(如果包含闭包)的修饰符。
  • 快速修复,将闭包作为参数传递,解除静态局部函数闭包的参数。
  • 背景动作,传递闭包作为参数,在非电梯关闭静止的当地的功能参数。

有一个新的检查,简化字符串插值,并提供相应的快速修复程序进行替换.PadLeft()PadRight()方法调用带有对齐表达式的插值字符串占位符。

除了添加新的快速修复外,我们还显著提高了内部包含大量方法的文件的守护程序性能:

  • 具有大型/嵌套条件表达式、元组表达式或转变表达。
  • 有很多的类型检查的方法时,可空引用类型被禁用。
  • 当可空引用类型启用了很多索引的方法访问。
  • 当启用可空引用类型时,使用大量闭包的方法。

现在,这些文件的代码分析完成得更快了。

复制代码参考

此版本对复制FQN功能。首先,它有一个新名字,复制代码参考.我们认为这个名称反映该功能的意义更好。

还有一条捷径,,CTRL + SHIFT + Alt + C键,直接从键盘调用它。不要忘记申请下的快捷方式ReSharper |选项|环境|键盘|快捷方式方案安装EAP生成后映射该快捷方式的操作。

如果你使用我们增加了新的功能Git.作为版本控制系统。有在GitHub的相关项目复制代码参考从GitHub克隆的项目弹出框。他们生成一个到GitHub存储库的正确链接,以便立即与任何人共享。

对于非GitHub存储库,现在可以在ReSharper设置中添加自定义URI模板。所有这些模板都将显示在复制代码参考模板URI可以由不同的预定义占位符组成,如当前分行名称,文档名称,当前行号, 等等。

最后,在弹出的本身又被赋予了显著换装。它有一个全新的设计,图标和格式。

支持AnalyzerConfig文件

与.NET 5 SDK开始,您可以配置全球的Visual Studio分析选项AnalyzerConfig文件夹。ReSharper 2021.3 EAP可以从这些全局文件中读取代码样式信息AnalyzerConfig文件,并用它来进行相应的调整ReSharper的规则。

语言注射

现在你可以标记一个函数的参数,字段或与物业[语言注入]注释属性。ReSharper的开始考虑标记代码实体在一个指定的语言代码片段的字符串值。有注入语言以下选项:CSS,HTML,JavaScript的,JSON或XML。只要你添加属性,你会得到正确的语法高亮,代码完成和其他功能出字符串里面的箱子。您需要添加的最新预览版JetBrains.Annotations要使用语言注入属性。

重新乳清蛋白C ++

如果有一个表达式可以在鼠标光标下的编译期间进行评估,ReSaRePEC++ 2021.3将显示快捷信息该评估结果提示。例如,你现在可以咨询该消息有关故障静态断言看什么断言表达式的计算结果为,签出的值的sizeof对齐操作者,或任何其他表达。对于一个二进制表达式,可以将每个操作数将鼠标悬停在获得其价值或操作员提示获得与最终结果的提示:

这种EAP建设也带来了一些导航的更新和一些代码检查,以帮助您采用C ++ 20种的库功能。查看这个博客帖子详情请参阅。

dotMemory

现在,dotMemory可以得到有关采样基于ETW事件内存分配数据。相比收集分配数据的传统的(统计)的方式,采样是较不准确的,但提供了许多优点:

  • 抽样分配数据没有性能惩罚收集。
  • 您不需要显式启用收集此数据,它始终处于启用状态。
  • 抽样分配数据也可以当您将探查到一个已经运行的应用程序所收集。

请注意,此功能仅适用于Windows。

点罩

这个NET全局工具得到的支持合并报告命令。

dotPeek

反编译器现在支持IAsyncDisposable界面

我们正在继续改进对读取和反编译单文件应用程序的支持:

  • 您可以看到捆绑的内容.json文件,例如,.runtimeconfig.json文件。
  • 通过单击中的根节点,可以查看所有嵌入文件的列表,其中包含有关单个文件应用程序的一些技术信息(标题格式版本和ID)大会浏览器
  • 您可以使用将包内容提取到文件夹从上下文菜单操作。
  • 您可以使用提取的大多数文件从包作为外部文件提取到文件在上下文菜单操作。

现在就这些。别忘了在下面的评论部分留下你的反馈,或者把你发现的任何问题提交给我们youtrack.

下载ReSharper的2021.3 EAP

发现更多