自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 asp.net core rabbitmq的基本使用

要在 .NET Core 应用程序中实现使用 RabbitMQ 发送和接收消息的简单示例,首先需要在开发机器上安装 RabbitMQ 服务器并运行它。接下来,我们将创建两个控制台应用程序:一个用于发送消息(生产者),另一个用于接收消息(消费者)。

2024-04-20 00:55:24 121

原创 asp.net core添加log4Net日志

2.新建配置文件(log4Net.config)配置文件,名字最好是这个。要不然要配置时要指定路径,默认寻找这个名称。输入下面的内容,可以根据自己的需求配置。5.查看日志文件,会在你配置的日志目录下创建你定义好的日志文件txt。3.在program中配置log4net。·1.安装log4Net的Nuget包。

2024-04-19 09:12:05 118

原创 asp.net core mvc 路由

在ASP.NET Core MVC中,路由是一项核心功能,它负责将进来的HTTP请求映射到相应的控制器和动作方法上。ASP.NET Core支持两种路由方式:传统的基于模板的路由(约定路由)和属性路由。

2024-04-18 06:44:20 131

原创 asp.net core 8.0 使用 Autofac ioc 容器 具体实例

要在ASP.NET Core 8.0项目中具体实现使用Autofac作为IOC容器,我们将遵循一个明确的示例,从创建新项目到配置Autofac,并演示如何注册和解析服务。

2024-04-18 06:10:22 427

原创 Asp.Net Core中的进程内托管与进程外托管模型

在ASP.NET Core中,托管模型决定了应用程序如何运行及其与Web服务器交互的方式。主要有两种托管模式:进程内托管(In-Process Hosting)和进程外托管(Out-of-Process Hosting)。每种模式都有自己的优势和使用场景。

2024-04-18 04:41:26 543

原创 asp.net core 依赖注入后的服务生命周期

ASP.NET Core 依赖注入(DI)容器支持三种服务的生命周期选项,它们定义了服务实例的创建和销毁的时机。这里说明一下,我们采用了Action注入的方法,新注入了一个ITest2 ,来保证2个ITest2 在同一个作用域.代码验证(这边创建一个asp.net core mvc)项目。页面刷新一下单例的始终保持一样,瞬时的和作用域发生了改变。//这里采用了Action注入的方法。program注入服务。

2024-04-18 04:16:41 533

原创 C#中的HashTable和Dictionary之间的区别

提供了更好的类型安全性和性能。因此,当你使用.NET Framework 2.0及更高版本时,建议使用。,除非有特定的理由需要使用后者。都可以用于存储键值对,但。

2024-04-18 02:58:47 274

原创 .net core8 自定义一个中间件

在.NET Core 8中自定义一个中间件,基本步骤与之前的.NET Core版本相似。中间件是ASP.NET Core请求处理管道的一个组件,它们可以在请求处理过程中被调用。

2024-04-18 02:19:55 393

原创 .NET Core中间件管道MAP的作用和使用

在ASP.NET Core中,中间件是构建HTTP请求管道的基本组件。中间件组件负责在ASP.NET Core应用程序中处理请求和响应。中间件可以执行多种任务,例如身份验证、记录、异常处理等。你可以按顺序将多个中间件组件组合在一起,形成一个请求处理管道。请求沿着这个管道依次通过每个中间件,直到找到合适的处理程序,然后响应可以沿着相同的管道返回给客户端。

2024-04-18 01:50:33 249

原创 c#抽象类和接口的区别

在C#中,抽象类(Abstract Class)和接口(Interface)都是用来定义抽象层和实现多态性的重要工具。

2024-04-18 01:10:02 473

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

在C#中,值类型(Value Types)和引用类型(Reference Types)是两种基本的数据类型分类,它们在内存管理、赋值方式、参数传递以及默认值等方面有着本质的区别。

2024-04-17 04:42:07 462

原创 c#数据储存栈(stack)和堆(heap)的方式

C#中,类的数据存储是通过堆(Heap)和栈(Stack)这两种内存结构来实现的。理解这两种数据结构的工作方式有助于更好地理解C#中的数据存储机制。

2024-04-17 04:29:00 632

原创 c#字段和属性的区别

在C#中,字段(fields)和属性(properties)都是类的成员,它们提供了类存储数据的方式,但它们在用途和功能上有着明显的区别。

2024-04-17 04:11:28 294

原创 c# 浅拷贝(Shallow Copy)和深拷贝(Deep Copy)

在C#中,拷贝对象有两种方式:浅拷贝(Shallow Copy)和深拷贝(Deep Copy)。理解这两种拷贝的区别对于管理对象和避免在程序中意外地共享或复制数据至关重要。

2024-04-17 03:43:07 436

原创 nssm 工具把asp.net core mvc变成 windows服务,使用nginx反向代理访问

nssm工具的作用:把项目部署成Windows服务,可以在系统后台运行1.创建一个asp.net core mvc的项目2.发布项目3.使用nssm工具安装服务这里就不提供安装包了,可以自己在网上下载找到文件目录,在地址栏输入 cmd安装 命令:nssm install进入图形化界面。

2024-04-04 20:52:21 923 1

原创 efcore8.0 mysql 生成sql执行时生成sql语句

【代码】efcore8.0 mysql 生成sql执行时生成sql语句。

2024-03-30 19:10:34 391

原创 windows powershell连接linux 上传下载文件

把桌面的123.txt 上传到linux home文件夹下。连接:输入下面命令,回车 输入密码进入linux系统。window上传文件到Linux服务器。linux下载文件到windows。-r:遍历文件夹下的所有文件。

2024-03-25 16:19:17 236

原创 c#IQueryable和IEnumberable的区别

选择还是取决于具体场景。如果你需要在数据库层面优化和执行查询,是更好的选择。如果你的数据已置于内存中或数据集不大,使用可能更为适宜。正确选择可以显著影响应用程序的性能和效率。

2024-03-25 14:31:42 418

原创 c#使用linq封装分页查询

在C#中,使用LINQ进行数据访问时,可以轻松实现排序、分页等操作。下面是一个通过LINQ实现的包含排序、页码、页大小的分页查询方法示例。这个示例假设我们使用的是EF Core作为ORM框架。

2024-03-25 14:30:31 426

原创 linq where 迭代器 原理

LINQ(Language Integrated Query)是.NET框架中的一套数据查询API,它允许使用类似SQL的查询表达式来处理数据,这些数据可以是内存中的对象集合、数据库中的表、XML文档等。LINQ查询操作通常涉及延迟执行(Lazy Evaluation)和迭代器(Iterators)的概念,我们将通过讨论Where扩展方法的实现来探索其背后的原理。

2024-03-24 12:04:12 380

原创 c#事件和委托代码demo

【代码】c#事件和委托代码demo。

2024-03-24 11:44:13 206

原创 制作nuget包并上传到nuget.org

下面是一个详细的步骤指南,用于创建一个简单的 C# NuGet 包并将其发布到 NuGet.org。我们将创建一个简单的数学库作为示例。

2024-03-23 12:34:11 854

原创 .net core cap-rabbitmq使用

controller代码。

2024-03-19 06:02:24 493

原创 ef core 使用 version乐观锁解决并发问题代码

首先,你需要在你的实体类中添加一个版本字段,通常以byte[]类型定义,并使用或者配置来标记它用作乐观锁。// 引入其他必要的命名空间set;} // 实体的主键// 其他属性...set;或者在你的DbContext类的()

2024-03-19 03:40:58 895

原创 efcore事务

在 Entity Framework Core (EF Core) 中,事务用于确保一系列数据库操作要么全部成功,要么全部失败,这对于保持数据的一致性非常重要。如果你使用的是 .NET Core 3.1 或更高版本,可以通过 NuGet 安装对应的包。例如,如果你的数据库是 SQL Server,可以安装。此外,EF Core 也支持 TransactionScope,但在多个上下文之间协调事务时需要额外的考虑。来启动一个事务,然后执行我们想要在事务中完成的操作。在上面的代码中,我们通过调用。

2024-03-15 02:45:10 354

原创 efcore coderfirst 生成数据库

接着,定义你的实体类以及继承自DbContext的上下文类。例如,为一个博客平台定义Blog实体和set;set;set;

2024-03-15 02:42:50 499

原创 sqlserver 表分区

表分区,把一个主文件组,拆分为多个文件组,每个文件组存放固定的数据,把一个张大表拆分为多个文件组存储,提高查询效率。350w条数据每个分区200w条,只有第一个和第二个区分有数据。我这本地准备了一张350w条数据的表,结构如下。下面演示把这张表拆分为4个区来储存。

2024-02-28 03:43:01 472

原创 sqlserver sql语句优化

型的,则优化器对其进行优化为Convert(float,3000),因为3000是个整数,我们应在编程时。一般来说,如果使用UNION ALL能满足要求的话,务必使用UNION ALL。对字段进行 null 值判断,将导致引擎放弃使用索引而进行全表扫描。使用select *的话会增加解析的时间,另外会把不需要的数据也给查询出来,数据传输也是。然 而,如果在编译时建立访问计划,变量的值还是未知的,当模糊匹配以%开头时,该列索引将失效,若不以%开头,该列索引有效。这将导致引擎放弃使用索引而进行全表扫描。

2024-02-28 01:57:25 572

原创 sqlserver 行转列,列转行

这些语句可以帮助将行转列或列转行,并且可以根据具体的业务需求来使用不同的聚合函数和列值。在实际使用中,需要根据具体的数据结构和业务需求来灵活运用这些语句。要在 SQL Server 中实现行转列和列转行,可以使用 PIVOT 和 UNPIVOT 语句。行转列(case when then)

2024-02-24 01:20:47 997

原创 sqlserver批量添加

在这两种方法中,可以一次性插入多条记录,从而实现批量添加数据到表中。需要注意的是,批量插入数据时应该考虑数据的完整性和唯一性约束,以避免插入重复数据或者破坏数据完整性。在 SQL Server 中,可以使用 INSERT INTO 语句来批量添加数据到表中。3.复制表结果和数据到新表,新表可以是临时表和物理表,表2必须存在,表1不存在。

2024-02-24 00:39:22 863

原创 sqlserver 三范式

通过满足三范式的规范,可以保证数据库结构的合理性和稳定性,减少数据冗余和提高数据存储的效率。第二范式(2NF):要求表中的每个非主键字段都完全依赖于整个主键,而不是依赖于主键的一部分。第三范式(3NF):要求表中的每个非主键字段之间是相互独立的,即不存在传递依赖关系。如果一个非主键字段依赖于另一个非主键字段,就需要将依赖关系分离到一个新的表中,以确保数据的独立性和一致性。在关系数据库设计中,三范式是一种用于规范化数据库结构的理论模型,旨在消除数据冗余和提高数据存储的效率。

2024-02-23 22:54:33 433

原创 sqlserver存储过程

在上面的示例中,创建了一个名为 GetEmployeeDetails 的存储过程,该存储过程接受一个名为 @EmployeeID 的参数,并根据该参数查询 Employees 表中特定的员工信息。在上面的示例中,调用了 GetEmployeeDetails 存储过程,并传递了 @EmployeeID 参数的值为 1001,并且接收了 @LastName 参数的返回值。在 SQL Server 中创建存储过程时,可以定义参数,以便在调用存储过程时传递数值、字符串或其他数据类型的值。

2024-02-23 22:50:16 505

原创 sqlserver触发器

在SQL Server中,触发器是一种特殊的数据库对象,它们会在表上执行特定的操作时自动触发。触发器是强大的工具,可以帮助确保数据库的完整性和一致性,并提供了一种灵活的方式来执行自定义的逻辑操作。在上面的示例中,创建了一个AFTER INSERT触发器,当在Employees表中插入新行时,会将相应的信息插入到EmployeeLog表中,以记录插入操作的日志信息。插入触发器(INSERT Trigger):当在表中插入新行时触发,可以执行一些额外的逻辑操作。

2024-02-21 23:25:25 529

原创 sqlserver 函数

在SQL Server中,函数是一种可重复使用的SQL代码块,它接受输入参数并返回一个值。SQL Server提供了多种类型的函数,包括标量函数、表值函数和聚合函数。这些是SQL Server中的一些常见类型的函数。函数在SQL Server中是非常有用的,它们可以帮助简化复杂的计算和逻辑操作,并可以提高代码的重用性。

2024-02-21 23:23:46 597

原创 sqlserver 事务

在脏读的情况下,读取到的数据可能是不正确或无效的,因为可能另一个事务最终并没有提交这些数据。Serializable(可串行化):事务进行排他锁,保证事务执行期间对同一行的读取和写入是串行化的,可以避免脏读、不可重复读和幻影读,但可能导致性能问题。Repeatable Read(可重复读):事务保证在事务执行期间对同一行的读取结果是一致的,可以避免脏读和不可重复读,但仍可能出现幻影读。Read Committed(提交读):事务只能读取已提交的数据,可以避免脏读,但仍可能出现不可重复读和幻影读。

2024-02-19 21:48:23 1199

原创 sqlserver索引(Index)

在 SQL Server 中,聚集索引(Clustered Index)和非聚集索引(Non-clustered Index)是两种不同类型的索引,它们在实现方式和功能上有一些重要的区别。聚集索引是按照索引键的顺序重新组织表的方式存储数据的索引。换句话说,表的数据行按照聚集索引的顺序进行排序,并且叶子节点包含了整个行的数据。每个表只能有一个聚集索引,因为数据行只能以一种方式进行排序。如果创建聚集索引,表的数据实际上是按照索引的顺序进行存储的。

2024-02-18 21:42:21 1021

原创 c# B+树

B+ 树是一种自平衡的树数据结构,通常用于数据库和文件系统等需要大量数据插入、删除和搜索操作的场景。与 B 树不同的是,B+ 树的内部节点不存储数据,只用作索引,所有的数据都存储在叶子节点上。这种特性使得 B+ 树的数据检索效率更高,适合在磁盘等存储设备上使用。在这个示例中,我们实现了 B+ 树的插入和搜索操作。实际上,B+ 树的实现还涉及删除操作、范围查询、叶子节点之间的连接等,这里只是一个简单的示例。在 C# 中实现 B+ 树可以帮助实现高效的数据存储和检索功能。接下来,创建一个 B+ 树类。

2024-02-18 01:35:54 472

原创 c# B树

B 树是一种自平衡的树数据结构,通常用于数据库和文件系统等需要大量数据插入、删除和搜索操作的场景。在 C# 中实现 B 树可以帮助实现高效的数据存储和检索功能。在这个示例中,我们实现了 B 树的插入和搜索操作。实际上,B 树的实现还涉及删除、合并节点、树的分裂等操作,这里只是一个简单的示例。在实际开发中,你可能需要根据需求进一步完善代码。希望这个示例能够帮助你理解如何在 C# 中实现 B 树。首先,我们需要定义一个节点类。然后,我们创建一个 B 树类。

2024-02-18 01:35:01 636

原创 c#平衡二叉树

在这个示例中,我们实现了 AVL 树的插入操作,并且包括了平衡因子的计算和旋转操作。实际上,平衡二叉树的实现还涉及删除、搜索和其他平衡操作等,这里只是一个简单的示例。在实际开发中,你可能需要根据需求进一步完善代码。在 C# 中实现平衡二叉树可以使用 AVL 树或红黑树等算法。下面我将展示一个简单的 AVL 树的实现。希望这个示例能够帮助你理解如何在 C# 中实现平衡二叉树。然后,我们创建一个 AVL 树类。首先,我们需要定义一个节点类。

2024-02-18 00:50:37 523

原创 c# 二叉树

在 C# 中,二叉树是一种常见的数据结构,它由节点组成,每个节点最多有两个子节点:左子节点和右子节点。在 C# 中,可以使用类来实现二叉树的节点,并且通过引用连接节点来构建整棵树。这是一个简单的二叉树示例,实际上,二叉树还有许多其他操作,比如删除节点、搜索节点等,可以根据实际需求来实现。方法向二叉树中插入新的节点,并使用。类来表示整个二叉树。类来表示二叉树的节点,以及一个。在这个示例中,我们定义了一个。

2024-02-18 00:49:50 477

空空如也

空空如也

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

TA关注的人

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