在Resharper生成的自动属性中更改访问修饰符

4

Resharper提供了一个功能,可以从构造函数参数创建和初始化自动属性。

默认情况下,生成的属性形式为:

public int Foo { get; set; }

"有可能修改访问器以实现这个吗?"
protected int Foo { get; private set; }

我不这么认为。在Resharper中有很多可以设置的东西,但据我所知,属性生成与模板无法关联。 - jessehouwing
2个回答

2

请在此处发布功能请求的链接,谢谢 :). - jessehouwing
1
谢谢你的回答!我已经向JetBrains提交了一个请求(http://resharper-support.jetbrains.com/requests/11670)。 - Olivier Blanc
@OlivierBlanc,提醒您一下,您之前提到的资源链接已经失效了。我找到了一个类似的问题链接@RSRP-458465 生成只读属性 - Peter Majeed

1
为了生成这个属性,我猜你正在使用“prop”模板。
所以你可以更改它,或者创建一个自己的新模板。
前往ReSharper菜单 -> 模板浏览器。
选择C#并查找“prop”,你可以点击编辑并更改它。
但也许最好的方法是创建一个新的模板,如果你有时想要默认属性。
点击新模板并编写。
protected $TYPE$ $NAME$ { get; private set; }

在快捷方式栏中输入您想要的内容,例如prprop,然后保存它。
现在打开一个文件,输入prprod,按两次tab键,就可以得到带有私有setter的受保护属性。
如果您没有使用模板或片段,而是使用“从构造函数创建自动属性”,则似乎无法更改访问修饰符。更改它的唯一方法是使用Resharper->编辑->生成代码...
然后从您选择要生成的内容中更改访问修饰符或选择是否只读。

2
抱歉,我表述不够准确。我是在谈论从构造函数参数生成的属性,我已经相应修改了问题。 - Olivier Blanc

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接