如何使用Resharper从构造函数生成依赖注入字段?
用ReSharper自动生成依赖注入的私有字段+构造函数赋值
嘿,刚上手ReSharper完全不用慌,这个自动把构造函数参数转成私有字段的功能它做得相当顺手,刚好匹配你说的Razor Pages依赖注入模式!我给你分两种常用操作方式,都是一步到位:
方式一:已有构造函数参数,生成字段并赋值
如果你已经写好了构造函数的参数(比如public CreateModel(AppDbContext db) { }),只需要:
- 把光标定位到参数
db上,或者直接选中这个参数 - 按下快捷键:Windows是
Alt+Enter,Mac是Option+Enter,调出ReSharper的快速操作菜单 - 在弹出的选项里,找到类似「Create private readonly field '_db' and initialize it」的选项(不同版本的ReSharper表述可能略有差异,但核心意思是生成私有只读字段并在构造函数里赋值),点击它就搞定了!
方式二:直接生成构造函数+对应私有字段(更高效)
如果你还没写构造函数,只想快速生成依赖注入的全套代码:
- 把光标放在类内部的空白处
- 按下快捷键:Windows是
Alt+Insert,Mac是Cmd+N,打开ReSharper的「Generate」菜单 - 选择「Constructor」选项,然后在弹出的窗口里勾选你要注入的依赖(比如
AppDbContext) - 点击确定,ReSharper会自动帮你生成私有只读字段,以及对应的构造函数赋值,完全就是你给出的示例代码样式!
生成后的代码会和你贴的示例完全一致:
public class CreateModel : PageModel { private readonly AppDbContext _db; public CreateModel(AppDbContext db) { _db = db; } }
而且默认就是下划线开头的私有只读字段,完美契合Microsoft Razor Pages的最佳实践~
内容的提问来源于stack exchange,提问作者Licht
相关产品推荐
相关产品推荐

