小编Tot*_*tty的帖子

在构建/保存和提交上设置C#editorconfig代码清除

我们的团队希望在C#项目中强制使用样式规则。我读过一段时间,微软说“ .editorconfig是未来”,所以我们想使用它。注意:我们不想使用ReSharper。

C#有很多很棒的规则,现在可以在editorconfig中定义,请参阅Microsoft自己的editorconfig指南

我们要使用它,并在Visual Studio中进行编码时强制执行在编辑器配置中设置的规则,并强制提交给git的代码遵循这些规则。

当添加.editorconfig规则时,我们会像这样对文件进行很好的处理:

使用var警告

在Visual Studio 2019中运行完全启用的“代码清除”,它会根据需要完全格式化我们的代码:

运行代码清理

问题1:如何使“运行代码清除”在保存/生成时自动运行?即使我们将某些规则设置为严重性“:error”,编译器仍然不会抱怨构建时C#文件中的问题。

注意:我已经尝试过在保存时调用Visual Studio的名为Format document的插件,但是它不遵循在editorconfig中设置的所有规则(只有少数规则,如固定制表符/空格和文件换行符结尾)

我们还想确保对git仓库的所有提交都进行格式化。

有一个名为dotnet-format的工具,该工具应该根据editorconfig规则来格式化代码。

我们想添加一个预提交的钩子,该钩子运行以下两个命令:

dotnet tool install -g dotnet-format
dotnet-format
Run Code Online (Sandbox Code Playgroud)

这可以很好地工作,但是问题是dotnet格式也不能解决文件严重性为“:error”的文件中的问题。

dotnet-format的行为与“保存时格式化文档”的行为相同,只是修复了诸如制表符/空格和文件换行符结尾之类的问题。

编辑:根据他们的Wiki, dotnet格式目前仅支持一些规则

问题2:我们如何从命令行运行与Visual Studio 2019中的``代码清理''命令相同的命令?

c# lint code-cleanup .net-core editorconfig

8
推荐指数
1
解决办法
685
查看次数

标签 统计

.net-core ×1

c# ×1

code-cleanup ×1

editorconfig ×1

lint ×1