VS依赖注入(DI)构造函数自动生成局部私有变量

news2024/11/16 23:32:17

前言

依赖注入(DI)在开发中既是常见的也是必需的技术。它帮助我们优化了代码结构,使得应用更加灵活、易于扩展,同时也降低了各个模块之间的耦合度,更容易进行单元测试,提高了编码效率和质量。我们经常会先定义局部变量,再在构造函数中使用,每次都要这样去编写耗时,下面通过VS自带功能,可以给我方便的生成,节省时间。

方法

下面以Visual studio 2022为例,讲解设置方法

如下图所示,我们不做任何设置,可以为我们生成与构造函数一样的名称的变量,看着总觉得有点别扭。

通常变量是以下划线来定义,如_service,下面就介绍vs自带设置,来生成这样的变量。

通过上图,加一条命名规则的设置后,就可以方便的来生成带下划线的变量了,如下图所示。

参考资料:

https://ardalis.com/configure-visual-studio-to-name-private-fields-with-underscore/


一路走来数个年头,感谢RDIF框架的支持者与使用者,大家可以通过下面的地址了解详情。

官方网站:http://www.guosisoft.com/ http://www.rdiframework.net/

特别说明,框架相关的技术文章请以官方网站为准,欢迎大家收藏!

国思RDIF低代码快速开发框架由海南国思软件科技有限公司专业团队长期打造、一直在更新、一直在升级,请放心使用!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/687998.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenCL编程指南-6.2程序对象

创建和构建程序 要创建程序对象,可以传入OpenCL C源代码文本,或者利用程序二进制码来创建。由OpenCL C源代码创建程序对象是开发人员创建程序对象的一般做法。OpenCL C程序的源代码放在一个外部文件中(例如,就像我们的示例代码中…

【网络知识面试】初识协议栈和套接字及连接阶段的三次握手

接上一篇:【网络面试必问】浏览器如何委托协议栈完成消息的收发 1. 协议栈 一直对操作系统系统的内核协议栈理解的模模糊糊,借着这一篇博客做一下简单梳理。 我觉得最直白的理解,内核协议栈就是操作系统中的一个网络控制软件,就是…

【git】git常用指令(项目一般使用流程示例)

文章目录 创建开发环境clone到本地查看分支创建自己的开发分支切换到开发分支 开发完成上传到仓库判断目前本地仓库的状态新内容提交到暂存区新内容更新到本地仓库新内容推到远端仓库dev1.0并入主分支1.切换到主分支2.合并3.推主分支上远端仓库 回退版本主分支更新了&#xff0…

软件产品登记测试为何如此重要?

软件产品登记测试为何如此重要? 软件产品登记测试报告,是对客户的软件产品进行功能性的检测和验证,确保这些功能都得以实现并能正常运行,可作为国家高新、增值税退税、双软评估、首套台软件的检测证明材料。 软件登记测试是“双软…

three.js中聚光灯及其属性介绍

一、聚光灯及其属性介绍 Three.js中的聚光灯(SpotLight)是一种用于在场景中创建聚焦光照的光源类型。它有以下属性: color:聚光灯的颜色。 intensity:聚光灯的强度。 distance:聚光灯的有效距离。 angl…

知识管理工具:在信息时代下的组织智慧管理

随着信息时代的到来,企业面临着前所未有的信息爆炸和快速变化的挑战。如何高效地管理和利用这些信息已经成为了企业生存和发展的关键。在这种背景下,知识管理工具应运而生,为企业提供了优秀的解决方案。 知识管理工具的定义与特点 知识管理的…

DAMA数据治理CDGA/CDGP认证考试备考经验分享

一,关于DAMA中国和CDGA/CDGP考试 国际数据管理协会(DAMA国际)是一个全球性的专业组织,由数据管理和相关的专业人士组成,非营利性机构,厂商中立。协会自1980年成立以来,一直致力于数据管理和数字…

gralylog介绍与安装

介绍 Graylog是一个开源的日志管理和分析平台,用于收集、存储、分析和可视化大量日志数据。它提供了一个集中化的解决方案,可以帮助组织有效地处理分散在各种系统和应用程序中的日志信息。 以下是Graylog的主要特点和功能: 日志收集&#x…

【AI工具】-MockingBird-语音合成语音克隆

简介 MockingBird: 英文翻译:反舌鸟,也可能来自《杀死一只知更鸟》(英语:To Kill a Mockingbird),台译“梅冈城故事”,中国大陆译“杀死一只知更鸟”,直译应为“杀死一…

【Python】python进阶篇之数据库操作

数据库操作 pip3安装mysql依赖 pip3 list|grep mysqlpip3 install mysql-connector-python #指定版本 pip3 install mysql-connector-python版本号 #升降版本 pip3 install --upgrade mysql-connector-python版本号原生SQL操作 操作mysql可以使用pymsql或mysql-connector-py…

基于html+css的图展示138

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

第三章 决策树

文章目录 第三章 决策树3.1基本流程3.2划分选择3.2.1信息增益3.2.2增益率3.2.3基尼指数 3.3剪枝处理3.3.1预剪枝3.3.2后剪枝 3.4连续与缺失值3.4.1连续值处理3.4.2缺失值处理 3.5多变量决策树3.7实验 第三章 决策树 3.1基本流程 决策过程: 基本算法: …

灵雀云获Gartner® 首份《DevOps平台魔力象限报告》“荣誉提及”

随着平台工程理念的崛起,企业使用的独立的DevOps工具链逐渐向更先进、更便捷的DevOps平台演进。Gartner发布了首份DevOps平台魔力象限报告(Gartner Magic Quadrant for DevOps Platforms)。在这个备受关注的报告中,中国云原生厂商…

大势智慧软硬件技术答疑第五期

1.控制点误差表达到多少就可以? 答:水平和高程误差在0.01左右就可以,图示精度是满足的。 2.三维影像有颜色,为什么生成的是二维影像是黑色的? 答:使用dasviewer的工具-输出正射图再试试。 3.最新模方对ps版…

JMeter中常见的四种参数化实现方式是什么?

1 参数化释义 什么是参数化?从字面上去理解的话,就是事先准备好数据(广义上来说,可以是具体的数据值,也可以是数据生成规则),而非在脚本中写死,脚本执行时从准备好的数据中取值。 参…

浅析移动警务App中的技术痛点与挑战

移动警务是指警务机关利用移动通信技术和移动设备,实现警务信息化、智能化和移动化的一种工作模式。通过移动警务,警务人员可以随时随地进行警务工作,提高警务反应速度和效率。 移动警务通常包括以下方面的内容: 移动巡逻&#x…

【ArcGIS Pro二次开发】(43):线闭合

当我们需要将多段线【polyline】转为面【polygon】的时候,必须保证线是闭合的,不然是无法生成面的,如下图: 如果cad线段,可以在属性里将闭合选项设置为是,实现线的闭合: 但如果是在ArcGIS Pro里…

【inpho精品教程】07 动连点自动提取和区域网平差

【inpho精品教程】07 动连点自动提取和区域网平差 文章目录 【inpho精品教程】07 动连点自动提取和区域网平差一、数据及参数检查二、参数设置三、运行四、 连接点提取失败的原因五、 连接点较差的原因一、数据及参数检查 在动连点自动提取和区域网平差之前,首先要检查工程中…

Miniconda安装使用教程

下载 官网地址:https://docs.conda.io/en/latest/miniconda.html 支持的系统: Windows 10 or newer, 64-bit macOS 10.13, or Linux, including Ubuntu, RedHat, CentOS 7, and others. 支持的系统架构: Windows- 64-bit x86, 32-bit x86; m…

Json 数据通用提取工具,使用 HTML JavaScript [单文件离线版]

Gitee 地址链接 Json2Csv js html 实现的一款通用型JSON数据提取工具,支持自动识别JSON数据节点并有序提取为CSV文件。 Convenient JSON data extraction tool. 使用简介 数据路径:设置Json中数据所处路径,如’root.topics.data’ ‘data.…