C# 格式设置选项
本文中的格式设置选项仅适用于 C# 代码。 这些是代码样式规则 IDE0055 的选项。
换行选项
“新行”选项涉及使用新行来设置代码格式。
- csharp_new_line_before_open_brace
- csharp_new_line_before_else
- csharp_new_line_before_catch
- csharp_new_line_before_finally
- csharp_new_line_before_members_in_object_initializers
- csharp_new_line_before_members_in_anonymous_types
- csharp_new_line_between_query_expression_clauses
.editorconfig 文件示例:
# CSharp formatting rules:
[*.cs]
csharp_new_line_before_open_brace = methods, properties, control_blocks, types
csharp_new_line_before_else = true
csharp_new_line_before_catch = true
csharp_new_line_before_finally = true
csharp_new_line_before_members_in_object_initializers = true
csharp_new_line_before_members_in_anonymous_types = true
csharp_new_line_between_query_expression_clauses = true
csharp_new_line_before_open_brace
此选项与左大括号 {
应放在前面代码的同一行还是新行上有关。 对于此规则,指定“全部”、“无”或一个或多个码位元素,如方法或属性,从而定义此规则的应用时间 。 若要指定多个代码元素,请使用逗号 (,) 分隔。
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_new_line_before_open_brace | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | all |
对于所有表达式,要求将大括号置于新行上(“Allman”样式)。 |
none |
对于所有表达式,需要将大括号置于同一行(“K&R”)。 | |
accessors , anonymous_methods , anonymous_types , control_blocks , events , indexers ,lambdas , local_functions , methods , object_collection_array_initializers , properties , types |
对于指定的代码元素,要求将大括号置于新行上(“Allman”样式)。 | |
默认选项值 | all |
代码示例:
// csharp_new_line_before_open_brace = all
void MyMethod()
{
if (...)
{
...
}
}
// csharp_new_line_before_open_brace = none
void MyMethod() {
if (...) {
...
}
}
csharp_new_line_before_else
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_new_line_before_else | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
将 else 语句置于新行。 |
false |
将 else 语句置于同一行。 |
|
默认选项值 | true |
代码示例:
// csharp_new_line_before_else = true
if (...) {
...
}
else {
...
}
// csharp_new_line_before_else = false
if (...) {
...
} else {
...
}
csharp_new_line_before_catch
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_new_line_before_catch | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
将 catch 语句置于新行。 |
false |
将 catch 语句置于同一行。 |
|
默认选项值 | true |
代码示例:
// csharp_new_line_before_catch = true
try {
...
}
catch (Exception e) {
...
}
// csharp_new_line_before_catch = false
try {
...
} catch (Exception e) {
...
}
csharp_new_line_before_finally
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_new_line_before_finally | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
需要将 finally 语句置于右大括号后的新行。 |
false |
需要将 finally 语句置于右大括号所在的同一行。 |
|
默认选项值 | true |
代码示例:
// csharp_new_line_before_finally = true
try {
...
}
catch (Exception e) {
...
}
finally {
...
}
// csharp_new_line_before_finally = false
try {
...
} catch (Exception e) {
...
} finally {
...
}
csharp_new_line_before_members_in_object_initializers
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_new_line_before_members_in_object_initializers | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
要求将对象初始值设定项的成员置于单独的行上 |
false |
要求将对象初始值设定项的成员置于同一行上 | |
默认选项值 | true |
代码示例:
// csharp_new_line_before_members_in_object_initializers = true
var z = new B()
{
A = 3,
B = 4
}
// csharp_new_line_before_members_in_object_initializers = false
var z = new B()
{
A = 3, B = 4
}
csharp_new_line_before_members_in_anonymous_types
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_new_line_before_members_in_anonymous_types | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
要求将匿名类型的成员置于单独的行上 |
false |
要求将匿名类型的成员置于同一行上 | |
默认选项值 | true |
代码示例:
// csharp_new_line_before_members_in_anonymous_types = true
var z = new
{
A = 3,
B = 4
}
// csharp_new_line_before_members_in_anonymous_types = false
var z = new
{
A = 3, B = 4
}
csharp_new_line_between_query_expression_clauses
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_new_line_between_query_expression_clauses | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
要求将查询表达式子句的元素置于单独的行上 |
false |
要求将查询表达式子句的元素置于同一行上 | |
默认选项值 | true |
代码示例:
// csharp_new_line_between_query_expression_clauses = true
var q = from a in e
from b in e
select a * b;
// csharp_new_line_between_query_expression_clauses = false
var q = from a in e from b in e
select a * b;
缩进选项
缩进选项涉及使用缩进来设置代码格式。
- csharp_indent_case_contents
- csharp_indent_switch_labels
- csharp_indent_labels
- csharp_indent_block_contents
- csharp_indent_braces
- csharp_indent_case_contents_when_block
.editorconfig 文件示例:
# CSharp formatting rules:
[*.cs]
csharp_indent_case_contents = true
csharp_indent_switch_labels = true
csharp_indent_labels = flush_left
csharp_indent_block_contents = true
csharp_indent_braces = false
csharp_indent_case_contents_when_block = true
csharp_indent_case_contents
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_indent_case_contents | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
缩进 switch case 内容 |
false |
不缩进 switch case 内容 |
|
默认选项值 | true |
代码示例:
// csharp_indent_case_contents = true
switch(c) {
case Color.Red:
Console.WriteLine("The color is red");
break;
case Color.Blue:
Console.WriteLine("The color is blue");
break;
default:
Console.WriteLine("The color is unknown.");
break;
}
// csharp_indent_case_contents = false
switch(c) {
case Color.Red:
Console.WriteLine("The color is red");
break;
case Color.Blue:
Console.WriteLine("The color is blue");
break;
default:
Console.WriteLine("The color is unknown.");
break;
}
csharp_indent_switch_labels
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_indent_switch_labels | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
缩进 switch 标签 |
false |
不缩进 switch 标签 |
|
默认选项值 | true |
代码示例:
// csharp_indent_switch_labels = true
switch(c) {
case Color.Red:
Console.WriteLine("The color is red");
break;
case Color.Blue:
Console.WriteLine("The color is blue");
break;
default:
Console.WriteLine("The color is unknown.");
break;
}
// csharp_indent_switch_labels = false
switch(c) {
case Color.Red:
Console.WriteLine("The color is red");
break;
case Color.Blue:
Console.WriteLine("The color is blue");
break;
default:
Console.WriteLine("The color is unknown.");
break;
}
csharp_indent_labels
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_indent_labels | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | flush_left |
标签置于最左侧的列 |
one_less_than_current |
将标签置于比当前上下文少一个缩进的位置 | |
no_change |
将标签置于与当前上下文相同的缩进位置 | |
默认选项值 | one_less_than_current |
代码示例:
// csharp_indent_labels= flush_left
class C
{
private string MyMethod(...)
{
if (...) {
goto error;
}
error:
throw new Exception(...);
}
}
// csharp_indent_labels = one_less_than_current
class C
{
private string MyMethod(...)
{
if (...) {
goto error;
}
error:
throw new Exception(...);
}
}
// csharp_indent_labels= no_change
class C
{
private string MyMethod(...)
{
if (...) {
goto error;
}
error:
throw new Exception(...);
}
}
csharp_indent_block_contents
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_indent_block_contents | |
适用的语言 | C# | |
选项值 | true |
缩进程序块内容。 |
false |
不缩进程序块内容。 | |
默认选项值 | true |
代码示例:
// csharp_indent_block_contents = true
static void Hello()
{
Console.WriteLine("Hello");
}
// csharp_indent_block_contents = false
static void Hello()
{
Console.WriteLine("Hello");
}
csharp_indent_braces
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_indent_braces | |
适用的语言 | C# | |
选项值 | true |
缩进大括号。 |
false |
不缩进大括号。 | |
默认选项值 | false |
代码示例:
// csharp_indent_braces = true
static void Hello()
{
Console.WriteLine("Hello");
}
// csharp_indent_braces = false
static void Hello()
{
Console.WriteLine("Hello");
}
csharp_indent_case_contents_when_block
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_indent_case_contents_when_block | |
适用的语言 | C# | |
选项值 | true |
如果它是程序块,则对 switch 语句中的 case 代码块缩进语句列表和大括号。 |
false |
如果它是程序块,则不对 switch 语句中的 case 代码块缩进语句列表和大括号。 | |
默认选项值 | true |
代码示例:
// csharp_indent_case_contents_when_block = true
case 0:
{
Console.WriteLine("Hello");
break;
}
// csharp_indent_case_contents_when_block = false
case 0:
{
Console.WriteLine("Hello");
break;
}
间距选项
这些格式设置选项涉及使用空格字符来设置代码格式。
- csharp_space_after_cast
- csharp_space_after_keywords_in_control_flow_statements
- csharp_space_between_parentheses
- csharp_space_before_colon_in_inheritance_clause
- csharp_space_after_colon_in_inheritance_clause
- csharp_space_around_binary_operators
- csharp_space_between_method_declaration_parameter_list_parentheses
- csharp_space_between_method_declaration_empty_parameter_list_parentheses
- csharp_space_between_method_declaration_name_and_open_parenthesis
- csharp_space_between_method_call_parameter_list_parentheses
- csharp_space_between_method_call_empty_parameter_list_parentheses
- csharp_space_between_method_call_name_and_opening_parenthesis
- csharp_space_after_comma
- csharp_space_before_comma
- csharp_space_after_dot
- csharp_space_before_dot
- csharp_space_after_semicolon_in_for_statement
- csharp_space_before_semicolon_in_for_statement
- csharp_space_around_declaration_statements
- csharp_space_before_open_square_brackets
- csharp_space_between_empty_square_brackets
- csharp_space_between_square_brackets
.editorconfig 文件示例:
# CSharp formatting rules:
[*.cs]
csharp_space_after_cast = true
csharp_space_after_keywords_in_control_flow_statements = true
csharp_space_between_parentheses = control_flow_statements, type_casts
csharp_space_before_colon_in_inheritance_clause = true
csharp_space_after_colon_in_inheritance_clause = true
csharp_space_around_binary_operators = before_and_after
csharp_space_between_method_declaration_parameter_list_parentheses = true
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
csharp_space_between_method_declaration_name_and_open_parenthesis = false
csharp_space_between_method_call_parameter_list_parentheses = true
csharp_space_between_method_call_empty_parameter_list_parentheses = false
csharp_space_between_method_call_name_and_opening_parenthesis = false
csharp_space_after_comma = true
csharp_space_before_comma = false
csharp_space_after_dot = false
csharp_space_before_dot = false
csharp_space_after_semicolon_in_for_statement = true
csharp_space_before_semicolon_in_for_statement = false
csharp_space_around_declaration_statements = false
csharp_space_before_open_square_brackets = false
csharp_space_between_empty_square_brackets = false
csharp_space_between_square_brackets = false
csharp_space_after_cast
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_after_cast | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在强制转换和值之间放置空格字符 |
false |
删除强制转换和值之间的空格 | |
默认选项值 | false |
代码示例:
// csharp_space_after_cast = true
int y = (int) x;
// csharp_space_after_cast = false
int y = (int)x;
csharp_space_after_keywords_in_control_flow_statements
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_after_keywords_in_control_flow_statements | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在控制流语句(如 for 循环)中的关键字后放置空格字符 |
false |
删除控制流语句(如 for 循环)中的关键字后的空格 |
|
默认选项值 | true |
代码示例:
// csharp_space_after_keywords_in_control_flow_statements = true
for (int i;i<x;i++) { ... }
// csharp_space_after_keywords_in_control_flow_statements = false
for(int i;i<x;i++) { ... }
csharp_space_between_parentheses
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_parentheses | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | control_flow_statements |
在控制流语句的括号之间放置空格 |
expressions |
在表达式的括号之间放置空格 | |
type_casts |
在类型转换中的括号之间放置空格 | |
false (或任何其他值) |
从不在括号之间添加空格 |
如果省略此规则或使用 control_flow_statements
、expressions
或 type_casts
以外的值,则不会应用该设置。
代码示例:
// csharp_space_between_parentheses = control_flow_statements
for ( int i = 0; i < 10; i++ ) { }
// csharp_space_between_parentheses = expressions
var z = ( x * y ) - ( ( y - x ) * 3 );
// csharp_space_between_parentheses = type_casts
int y = ( int )x;
// csharp_space_between_parentheses = false
int y = (int)x;
csharp_space_before_colon_in_inheritance_clause
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_before_colon_in_inheritance_clause | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在类型声明中的基或接口冒号前放置空格字符 |
false |
删除类型声明中基或接口冒号前的空格 | |
默认选项值 | true |
代码示例:
// csharp_space_before_colon_in_inheritance_clause = true
interface I
{
}
class C : I
{
}
// csharp_space_before_colon_in_inheritance_clause = false
interface I
{
}
class C: I
{
}
csharp_space_after_colon_in_inheritance_clause
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_after_colon_in_inheritance_clause | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在类型声明中的基或接口冒号后放置空格字符 |
false |
删除类型声明中基或接口冒号后的空格 | |
默认选项值 | true |
代码示例:
// csharp_space_after_colon_in_inheritance_clause = true
interface I
{
}
class C : I
{
}
// csharp_space_after_colon_in_inheritance_clause = false
interface I
{
}
class C :I
{
}
csharp_space_around_binary_operators
属性 | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_around_binary_operators | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | before_and_after |
在二元运算符前后插入空格 |
none |
删除二元运算符前后的空格 | |
ignore |
忽略二元运算符前后的空格 | |
默认选项值 | before_and_after |
代码示例:
// csharp_space_around_binary_operators = before_and_after
return x * (x - y);
// csharp_space_around_binary_operators = none
return x*(x-y);
// csharp_space_around_binary_operators = ignore
return x * (x-y);
csharp_space_between_method_declaration_parameter_list_parentheses
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_method_declaration_parameter_list_parentheses | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在方法声明参数列表的左括号之后和右括号之前放置空格字符 |
false |
删除方法声明参数列表的左括号之后和右括号之前的空格字符 | |
默认选项值 | false |
代码示例:
// csharp_space_between_method_declaration_parameter_list_parentheses = true
void Bark( int x ) { ... }
// csharp_space_between_method_declaration_parameter_list_parentheses = false
void Bark(int x) { ... }
csharp_space_between_method_declaration_empty_parameter_list_parentheses
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_method_declaration_empty_parameter_list_parentheses | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在方法声明的空参数列表括号内插入空格 |
false |
删除方法声明的空参数列表括号内的空格 | |
默认选项值 | false |
代码示例:
// csharp_space_between_method_declaration_empty_parameter_list_parentheses = true
void Goo( )
{
Goo(1);
}
void Goo(int x)
{
Goo();
}
// csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
void Goo()
{
Goo(1);
}
void Goo(int x)
{
Goo();
}
csharp_space_between_method_declaration_name_and_open_parenthesis
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_method_declaration_name_and_open_parenthesis | |
适用的语言 | C# | |
选项值 | true |
在方法声明中方法名称和左括号之间放置空格字符 |
false |
删除方法声明中方法名称和左括号之间的空格字符 | |
默认选项值 | false |
代码示例:
// csharp_space_between_method_declaration_name_and_open_parenthesis = true
void M () { }
// csharp_space_between_method_declaration_name_and_open_parenthesis = false
void M() { }
csharp_space_between_method_call_parameter_list_parentheses
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_method_call_parameter_list_parentheses | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在方法调用的左括号之后和右括号之前放置空格字符 |
false |
删除方法调用的左括号之后和右括号之前的空格字符 | |
默认选项值 | false |
代码示例:
// csharp_space_between_method_call_parameter_list_parentheses = true
MyMethod( argument );
// csharp_space_between_method_call_parameter_list_parentheses = false
MyMethod(argument);
csharp_space_between_method_call_empty_parameter_list_parentheses
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_method_call_empty_parameter_list_parentheses | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在空参数列表的括号中插入空格 |
false |
删除空参数列表括号内的空格 | |
默认选项值 | false |
代码示例:
// csharp_space_between_method_call_empty_parameter_list_parentheses = true
void Goo()
{
Goo(1);
}
void Goo(int x)
{
Goo( );
}
// csharp_space_between_method_call_empty_parameter_list_parentheses = false
void Goo()
{
Goo(1);
}
void Goo(int x)
{
Goo();
}
csharp_space_between_method_call_name_and_opening_parenthesis
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_method_call_name_and_opening_parenthesis | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
在方法调用名称和左括号之间插入空格 |
false |
删除方法调用名称和左括号之间的空格 | |
默认选项值 | false |
代码示例:
// csharp_space_between_method_call_name_and_opening_parenthesis = true
void Goo()
{
Goo (1);
}
void Goo(int x)
{
Goo ();
}
// csharp_space_between_method_call_name_and_opening_parenthesis = false
void Goo()
{
Goo(1);
}
void Goo(int x)
{
Goo();
}
csharp_space_after_comma
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_after_comma | |
适用的语言 | C# | |
选项值 | true |
在逗号后面插入空格 |
false |
删除逗号后面的空格 | |
默认选项值 | true |
代码示例:
// csharp_space_after_comma = true
int[] x = new int[] { 1, 2, 3, 4, 5 };
// csharp_space_after_comma = false
int[] x = new int[] { 1,2,3,4,5 };
csharp_space_before_comma
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_before_comma | |
适用的语言 | C# | |
选项值 | true |
在逗号前面插入空格 |
false |
删除逗号前面的空格 | |
默认选项值 | false |
代码示例:
// csharp_space_before_comma = true
int[] x = new int[] { 1 , 2 , 3 , 4 , 5 };
// csharp_space_before_comma = false
int[] x = new int[] { 1, 2, 3, 4, 5 };
csharp_space_after_dot
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_after_dot | |
适用的语言 | C# | |
选项值 | true |
在点号后面插入空格 |
false |
删除点号后面的空格 | |
默认选项值 | false |
代码示例:
// csharp_space_after_dot = true
this. Goo();
// csharp_space_after_dot = false
this.Goo();
csharp_space_before_dot
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_before_dot | |
适用的语言 | C# | |
选项值 | true |
在点号前面插入空格 |
false |
删除点号前面的空格 | |
默认选项值 | false |
代码示例:
// csharp_space_before_dot = true
this .Goo();
// csharp_space_before_dot = false
this.Goo();
csharp_space_after_semicolon_in_for_statement
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_after_semicolon_in_for_statement | |
适用的语言 | C# | |
选项值 | true |
在 for 语句中的每个分号后面插入空格 |
false |
删除 for 语句中每个分号后面的空格 |
|
默认选项值 | true |
代码示例:
// csharp_space_after_semicolon_in_for_statement = true
for (int i = 0; i < x.Length; i++)
// csharp_space_after_semicolon_in_for_statement = false
for (int i = 0;i < x.Length;i++)
csharp_space_before_semicolon_in_for_statement
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_before_semicolon_in_for_statement | |
适用的语言 | C# | |
选项值 | true |
在 for 语句中的每个分号前插入空格 |
false |
删除 for 语句中每个分号前的空格 |
|
默认选项值 | false |
代码示例:
// csharp_space_before_semicolon_in_for_statement = true
for (int i = 0 ; i < x.Length ; i++)
// csharp_space_before_semicolon_in_for_statement = false
for (int i = 0; i < x.Length; i++)
csharp_space_around_declaration_statements
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_around_declaration_statements | |
适用的语言 | C# | |
选项值 | ignore |
不删除声明语句中多余的空格字符 |
false |
删除声明语句中多余的空格字符 | |
默认选项值 | false |
代码示例:
// csharp_space_around_declaration_statements = ignore
int x = 0 ;
// csharp_space_around_declaration_statements = false
int x = 0;
csharp_space_before_open_square_brackets
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_before_open_square_brackets | |
适用的语言 | C# | |
选项值 | true |
在左方括号 [ 前插入空格 |
false |
删除左方括号 [ 前的空格 |
|
默认选项值 | false |
代码示例:
// csharp_space_before_open_square_brackets = true
int [] numbers = new int [] { 1, 2, 3, 4, 5 };
// csharp_space_before_open_square_brackets = false
int[] numbers = new int[] { 1, 2, 3, 4, 5 };
csharp_space_between_empty_square_brackets
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_empty_square_brackets | |
适用的语言 | C# | |
选项值 | true |
在空方括号 [ ] 之间插入空格 |
false |
删除空方括号 [] 之间的空格 |
|
默认选项值 | false |
代码示例:
// csharp_space_between_empty_square_brackets = true
int[ ] numbers = new int[ ] { 1, 2, 3, 4, 5 };
// csharp_space_between_empty_square_brackets = false
int[] numbers = new int[] { 1, 2, 3, 4, 5 };
csharp_space_between_square_brackets
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_space_between_square_brackets | |
适用的语言 | C# | |
选项值 | true |
在非空方括号 [ 0 ] 中插入空格字符 |
false |
删除非空方括号 [0] 中的空格字符 |
|
默认选项值 | false |
代码示例:
// csharp_space_between_square_brackets = true
int index = numbers[ 0 ];
// csharp_space_between_square_brackets = false
int index = numbers[0];
换行选项
“换行”格式设置选项涉及对语句和代码块使用单个行与单独的行。
.editorconfig 文件示例:
# CSharp formatting rules:
[*.cs]
csharp_preserve_single_line_statements = true
csharp_preserve_single_line_blocks = true
csharp_preserve_single_line_statements
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_preserve_single_line_statements | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
将语句和成员声明保留在同一行上 |
false |
将语句和成员声明保留在不同行上 | |
默认选项值 | true |
代码示例:
//csharp_preserve_single_line_statements = true
int i = 0; string name = "John";
//csharp_preserve_single_line_statements = false
int i = 0;
string name = "John";
csharp_preserve_single_line_blocks
Property | 价值 | 说明 |
---|---|---|
选项名称 | csharp_preserve_single_line_blocks | |
适用的语言 | C# | |
引入的版本 | Visual Studio 2017 | |
选项值 | true |
将代码块保留在单个行上 |
false |
将代码块保留在单独的行上 | |
默认选项值 | true |
代码示例:
//csharp_preserve_single_line_blocks = true
public int Foo { get; set; }
//csharp_preserve_single_line_blocks = false
public int MyProperty
{
get; set;
}