自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(161)
  • 收藏
  • 关注

原创 NET Core中负责依赖注入和控制反转的核心组件有两个:IServiceCollection和IServiceProvider

在 .NET Core 中,依赖注入(DI)和控制反转(IoC)的核心组件为 ‌IServiceCollection‌ 和 ‌IServiceProvider‌,二者分工明确,共同实现服务的注册与解析‌

2025-03-13 11:14:14 457

原创 NET Core 框架内置 IServiceCollection是什么

在 .NET Core(包括后续的 .NET 5+)中,是 ‌‌ 的核心组件之一,属于框架内置的依赖注入容器的一部分。它的作用是管理应用程序中‌‌,并最终构建一个‌‌,供应用程序解析和使用这些服务。需要详细解释每个生命周期的适用场景。比如Transient每次请求都新建实例,Scoped在同一个请求内重用,Singleton整个应用生命周期一个实例。这对性能优化和资源管理很重要。

2025-03-13 11:06:24 457

原创 使用面向对象定义 User、Product、Order 等类,封装用户行为、商品属性和订单流程,通过继承实现会员等级差异‌

通过继承来实现会员等级差异

2025-03-12 16:17:27 909

原创 执行ef新增迁移文件时报错The following constructors had parameters that could not be bound to properties of the

无法创建类型为''的'DbContext'。如果你添加了一个有参构造函数,并且没有同时保留一个无参构造函数,EF Core可能会遇到无法创建实体实例的情况,因为它不知道如何自动提供这些构造函数参数的值。看了下实体,确实没有没有无参构造函数,但是之前迁移这个order表时时通过的,这里只是更新下就不行了,看了下原因时我实体中增加了有参构造函数。(订单详情列表),但这些参数在实体类型的属性中没有找到对应的绑定项,或者这些参数的类型不是EF Core能够自动处理的类型。实体类型的构造函数无法正确绑定参数。

2024-12-28 11:01:33 633

原创 vue中rules自定义规则实现

vue中rules自定义规则实现

2024-08-09 15:24:25 1054

原创 slice 截取

JavaScript中的一个数组方法。然而,在Vue 3的应用开发中,slice方法经常被用于处理数组数据,特别是在需要实现分页、数据截取或数据展示等场景时。

2024-08-08 16:20:44 678

原创 el-popover实现类型tooltip弹出框提示信息

话不多说,直接上代码是 Element UI 框架中的一个组件,用于实现弹出框(Popover)的功能。Element UI 是一个基于 Vue 2.0 的桌面端组件库,用于快速构建网站界面。el-popover组件允许用户通过点击或鼠标悬停等方式触发一个浮层,这个浮层可以包含文本、图片、表单等多种内容,用于展示额外信息或进行交互操作。

2024-08-08 15:18:42 559

原创 CAP+RabbitMQ

CAP和RabbitMQ通常是结合在一起使用的,以实现微服务间的通信。CAP作为一个EventBus(事件总线),允许不同的组件或微服务之间通过消息队列进行异步通信,而RabbitMQ作为消息队列的具体实现,提供了消息传递的底层支持。

2024-08-05 17:16:32 841

原创 值类型和引用类型的区别

当引用类型变量被赋值给另一个变量时,复制的是引用(即内存地址),而不是实际的数据。C#中的类(class)、接口(interface)、委托(delegate)和数组(array,尽管它们看起来像值类型,但实际上是引用类型)都是引用类型。值类型变量直接包含其数据,当值类型变量被赋值给另一个变量时,会创建该值的一个副本。C#中的基本数据类型(如int、float、bool、char、enum和struct)以及可空类型(如int?在C#中,值类型和引用类型的主要区别在于它们在内存中的存储和传递方式。

2024-08-05 11:32:38 268

原创 请编程实现一个冒泡排序算法?

冒泡排序(Bubble Sort)是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这种交换元素的方法是数组操作中非常基本且常用的技术。它允许你在不增加额外数组空间的情况下,重新排列数组中的元素。然而,需要注意的是,如果。将是越界访问,因为数组的索引是从0开始的,并且最大索引是数组长度减一。注意:需要理解引用类型的概念,会更清楚的理解下面代码。

2024-08-05 11:15:50 415

原创 vue.js 实现排序

在vue.js中遇到一个集合,需要根据某个字段长度排序,可以使用sort这种方式。

2024-07-31 11:00:17 308

原创 Tooltip 文字提示

在偶然维护前端开发时,遇到页面列表中某个字段内容太长,且该字段使用了组件显示,导致不能使用纯文本得那个省略号代替显示得css样式效果,只能另辟溪路

2024-07-31 10:55:33 635

原创 liunx 挂载硬盘以及自启挂载

可以选择现有的目录(如/mnt、/media)作为挂载点,也可以创建新的目录(如/mydisk)。使用mkdir命令创建新目录。这里/dev/sdb1是分区设备名称,/mydisk是挂载点,ext4是文件系统类型,defaults是挂载选项,两个0分别表示不备份和不用fsck检查。这里/dev/sdb1是硬盘的分区设备名称,而不是硬盘,硬盘可能是sdb,可以分多个区,sdb1是一个分区,/mydisk是挂载点目录。挂载成功后,可以使用df或mount命令查看挂载情况,确认硬盘已经成功挂载到指定的挂载点。

2024-07-24 10:15:48 643

原创 neo4j图数据库查询一个节点下的所有关系

图数据库查询一个节点下的所有关系

2024-07-20 15:37:21 640

原创 数据分表和分库原理

数据分表和分库是数据库设计中常见的扩展和优化手段,用于解决大数据量下的性能瓶颈问题。

2024-07-05 14:24:12 511

原创 为啥使用virtual并添加[UnitOfWork]属性就可以解决上下文安全问题

时,ABP框架会在方法执行之前自动创建一个新的数据库上下文实例,并在方法执行完成后(无论是正常完成还是由于异常而失败)自动释放该实例。通过这种方法,你可以确保每个数据库操作都在其自己的上下文实例中执行,从而避免了潜在的并发问题和数据不一致。这减少了出错的可能性,并使代码更易于维护和扩展。属性到方法上是ABP框架提供的一种机制,用于自动管理数据库上下文的生命周期和事务,从而确保数据库操作的安全性和一致性。这种机制是ABP提供的拦截和代理功能的一部分,用于确保数据库操作在单一、一致的数据库上下文实例中执行。

2024-06-29 11:13:25 615

原创 abp中数据库上下文不安全

在ABP(ASP.NET Boilerplate)框架中,上下文不安全问题通常与数据库操作、事件处理以及依赖注入容器的使用有关。通过上述措施,可以有效地解决ABP中的上下文不安全问题,并确保应用程序的稳定性和安全性。

2024-06-29 11:01:26 518

原创 vue3中省市区联动在同一个el-form-item中咋么设置rules验证都不为空的效果

那咋么办,其实可以把prop直接设置成extraProperties.City,这样可以直接去验证市区,而省份的话选择了,才会联动出市区的数据,用户才能选择市区,以此类推就可以实现上面的三级都验证不为空的问题。如上设置的prop是extraProperties.Province,导致验证时只要省份选择了就不验证市区了,在开发中出现如下情况,在同一个el-form-item设置了省市区三级联动的效果。

2024-06-28 11:42:37 455

原创 vue3中若v-model绑定的响应字段出现三级,该如何实现rules验证规则

vue3中若v-model绑定的响应字段出现三级,比如:InformationForm.extraProperties.Category,该如何实现rules验证规则

2024-06-28 11:01:26 568 1

原创 Vue3中根据select得选项值,改变当前元素同级下的子元素得disabled属性值

在 Vue 3 中,你通常不会直接通过类名(或任何其他 DOM 选择器)来获取 DOM 元素,因为 Vue 鼓励你使用数据驱动视图的方式来更新和操作元素。然而,如果你确实需要访问 DOM 元素(这通常是不推荐的,除非有特别的原因),你可以使用 Vue 3 的 ref 或者 refs(在模板中使用 ref 指令时,它们会在组件的 $refs 对象中作为响应式引用存在)。

2024-06-26 18:03:40 676

原创 项目中eventbus和rabbitmq配置后,不起作用

项目中eventbus和rabbitmq配置后,在执行订阅事件时,发送得消息在base项目中没有执行

2024-06-21 17:30:11 394

原创 word中根据上级设置下级编号

word中根据上级设置下级编号,比如现在想设置下级编码跟随上级逐级显示成3.13.4.1

2024-06-15 09:56:06 2037

原创 配置应用程序的服务和请求处理管道 为啥要在starup而不再program中配置呢

类中,有助于实现关注点分离、提高代码清晰性和可读性、增加灵活性、遵循最佳实践,并方便依赖注入的配置和管理。综上所述,将应用程序的服务和请求处理管道配置放在。配置应用程序的服务和请求处理管道通常在。

2024-06-13 16:53:51 287

原创 在 ASP.NET Core 应用程序中,Program.cs、Startup.cs 和 Module.cs区别作用

在 ASP.NET Core 应用程序中,Program.cs、Startup.cs 和 Module.cs(虽然 Module.cs 并不是 ASP.NET Core 的默认部分,但它可能是一个自定义的类或文件)各自扮演着不同的角色,并服务于不同的目的。

2024-06-13 16:40:53 816

原创 c#中上传超过30mb的文件,接口一直报404,小于30mb的却可以上传成功

c#中上传超过30m的文件,接口一直报404,小于30m的却可以上传成功

2024-06-13 16:29:34 1176 4

原创 根据反射获取枚举值集合

以上根据枚举类名通过反射实现,且使用懒加载,注入的IGeneralInfoAppService服务,且传递的枚举类必须在项目下,在该解决方案不同的项目下是查询不出来的。1、获取枚举集合(根据枚举类名通过反射实现)/// 枚举下拉列表接口。

2024-06-07 17:36:40 451

原创 浅谈mysql 的批量delete 和 使用in条件批量删除问题

需要注意的是,这个IN子句可能不会按预期工作,因为它可能会产生笛卡尔积的效果,即它会尝试匹配所有可能的(b, c)组合,而不仅仅是那些实际存在的组合。如果必须使用第二个方法(即单个DELETE语句使用IN子句),请确保你的IN子句正确地描述了要删除的记录集,并且已经为相关的列建立了合适的索引。如果可能的话,尽量减少事务的大小和持续时间,以减少锁定的资源数量。然而,这种方法的缺点是存在大量的网络往返(如果客户端和数据库服务器分开部署),以及可能的日志记录开销(取决于数据库的配置和隔离级别)。

2024-06-07 14:40:13 1821

原创 mysql 拼接字段+根据特定值返回特定内容

1、这里,首选实现根据特定值返回特定内容,使用 case。2、然后使用Group_Concat函数。

2024-06-06 10:48:33 374

原创 word中设置页眉,首页不设置

在设计文档时,有时候会给文档设置页眉,但是一设置,就是每页都会同时设置,大部分都不需要首页设置,那咋么解决呢,请看以下的解说,Come On!勾选以后会清空首页页眉内容,让你重新填写,此时可以选择上面菜单栏最后的一个关闭菜单,点击以下,即可设置首页为空的页眉。2、点击页眉,会显示出,如下菜单,然后再页面中的页眉出,输入你要添加的内容。3、此时重点来了 ,看页眉页脚下的菜单栏有首页不同,请勾选。1、首先点击头部菜单栏的 页面,这一栏会显示出页眉菜单。

2024-06-01 09:51:27 1945

原创 FirstOrDefaultAsync()与GetQueryableAsync()解说

在大多数情况下,直接从执行查询可能会比通过自定义仓库接口执行查询具有更好的性能。但是,具体的性能差异取决于多种因素,包括查询提供程序的实现、数据源的位置、网络延迟、序列化成本以及错误处理和日志记录逻辑的实现等。因此,在实际应用中,最好通过基准测试来确定哪种方法更适合你的特定用例。

2024-05-30 11:46:40 913

原创 AsEnumerable() 与IQueryable<T>

本身不会触发数据的加载,但随后的操作(如遍历集合)可能会。如果转换后的查询包含对数据库数据的引用,并且该查询被遍历,那么这些数据将被加载到内存中。在数据库中执行的操作通常比在内存中执行的操作更快,特别是当处理大量数据时。这将生成一个高效的SQL查询来计算行数,而不需要加载任何数据到内存中。然而,这个转换主要是用于改变查询的执行上下文,而不是立即触发数据的加载。会使任何后续的LINQ操作在内存中执行,而不是在数据库中执行。对象时,它会按照定义的顺序提供集合中的元素。:这是一个表示可以枚举的数据集合的接口。

2024-05-23 17:01:09 551

原创 巧用count与count()

在编写代码时,为了获得最佳性能和可读性,请尽量使用适当的集合类型和属性。如果你不确定集合的类型,可以查看其文档或使用。在这种情况下,没有性能更高的替代选项,你只能使用。的性能差异主要取决于。因此,在这种情况下,关键字进行类型检查。

2024-05-21 14:45:44 551

原创 any()、!any()与count()的效率比较

方法用于检查集合中是否至少有一个元素满足给定的条件(如果不提供条件,则默认检查是否有任何元素)。一旦找到满足条件的元素,它就会立即返回。方法用于计算集合中满足给定条件的元素数量。它会遍历整个集合并计数,无论是否找到了元素。即使只对一个元素感兴趣(即只需要知道是否有元素),,并且不会继续遍历集合的其余部分。因此,从性能的角度来看,如果集合很大且元素很快被找到,等)的扩展方法,但它们的目的和行为有所不同,这直接影响它们的效率。在性能上通常更差,特别是当集合很大且只需要知道是否有元素时。是两个常用于集合

2024-05-20 11:30:56 641

原创 字典+工厂模式实现异步处理

如何使用字典+工厂模式实现调用异步方法

2024-05-17 00:30:00 241

原创 实现el-selet中分组显示option

如果想使用远程搜索得el-select且又想每次查询时分组展示,可以这处理

2024-05-11 13:30:00 458

原创 vue+elmentuiplus中Table-column 动态添加calss

如何在vue+elmentuiplus中Table-column 添加calss以及动态添加class

2024-05-11 08:30:00 1274

原创 vue3中实现内容溢出隐藏以及显示提示属性

实现溢出...隐藏以及鼠标放上去弹出提示框显示出所有内容

2024-05-10 09:58:34 739

原创 前端js中可以替换“+变量+”拼接字符串的几种方式

在大多数情况下,你应该使用模板字符串,因为它们既易读又易于编写。如果你正在使用旧版浏览器或环境,并且需要确保兼容性,那么你可能需要依赖于字符串拼接(这种方式是字符串连接的一种常见方法,被称为字符串拼接。方法返回一个新的字符串,不会修改原始字符串(因为字符串在JavaScript中是不可变的)。然而,这种方法在现代JavaScript中并不常见,也不推荐使用。如果你有一个数组并且想要将数组元素连接成一个字符串,可以使用。这是ES6引入的一种新特性,允许你在字符串中使用。的方式,但在某些情况下可能是有用的。

2024-05-09 10:27:22 435

原创 使用ROW_NUMBER()分组遇到的坑

今天这里主要遇到的坑是:清洗的表里的F_CNKITitle字段含有空格、换行符,所以导致内容看着一样,其实是不一样,可以点击字段内容,右键复制,粘贴到一对引号里就发现,换行了,这两列中的F_CNKITitle看着是不是一样,且点击内容进入,也没有显示出空格换行啥,但是右键复制下放到引号中就会发现问题所在。1、再一次清洗数据时,需要过滤重复数据,使用了ROW_NUMBER() 来分组给每组数据排序号。在获取每组的第一行数据。

2024-05-08 14:38:22 668

原创 优化sqlserver中的 not like

但是,对于 NOT LIKE 操作符来说,特别是当模式以通配符 % 开头时,它通常不会利用索引(如果有一个的话),因为这样的模式匹配是非确定性的。字符在你的数据模型中有特殊意义,并且你经常需要基于它进行查询,那么可能需要重新考虑你的数据库设计。创建计算列和索引(如果查询非常频繁):如果性能是一个大问题,并且你知道你的数据不会频繁更改,你可以考虑创建一个计算列,并在其上建立索引。

2024-05-07 14:33:13 1214

dBeaver数据库管理器

dBeaver数据库管理器

2024-01-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除