自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 .net 8实现带层级 DataTable自动Orm

承上篇只实现了单实体,不带层级的Orm实现,本篇文章实现带层级的自动orm,不需要自定义Attribute,不需要sql强依赖,但是仍然写法有一点小限制(为了解决多条数据过滤问题)。经测试,上面方法执行效率还行,是一个基础的实现,欢迎对其扩展,有更好的idea可以在评论区留言,互相交流学习。2. for循环查询到的 DataRow ,然后将每一列数据映射到实体上,涉及到层级本质是递归。1. 将需要映射的对象的属性层级,以及type 存放在字典中;以上就是文章的全部。

2024-07-16 15:57:00 246

原创 .net 8 实现单表sql query 自动ORM

在我们日常开发中,EF或者EfCore通过导航属性实现的自动ORM已经很方便了,其主要围绕实体为中心的ORM,在复杂场景下可能还是通过sql执行方式比较方便,但是有时候我们需要返回的实体和表结构并不相似,所以基于该场景,我们尝试实现一个基础的单表ORM.此外本博主仍然实现了带层级的ORM,但是由于并不是全自动的,对sql书写有比较严格的要求,如果大家有什么更好的实现带层级的想法,欢迎交流沟通。通过以上步骤就可以简单实现单表的自动ORM了,避免我们手动进行row, column 重复代码映射了。

2024-07-05 15:28:24 173

原创 如何发布自己写的package到Nuget服务器上

公司内部可能需要搭建自己的私有nuget资源,然后内部通过nuget来管理我们基础服务的引用,方便我们提炼成框架,复用代码,提高开发效率。标记中添加以下属性。对名称和公司使用自己的值,并将包标识符替换为唯一值。(IsPackable 这个属性必须)我们下面基于 Library 项目实现,而且我们通常使用方式为注入容器或者请求管道。5. 成功会输出以下结果,然后我们去nuget查询是否发布成功。我们发布上去后可以在nuget右下角Manager点击。3. 运行下面命令进行打包输出:拿到.nupkg文件。

2024-05-31 12:33:31 316

原创 .net core 8 配置中心热部署以及集成Consul实现微服务式调用

配置中心对于日益增长的服务集群来说是十分必要的,能有效方便我们对配置的管理,我们常见的配置中心有Apollo, Nacos等,本篇文章基于Apllo架构设计简单实现功能。

2024-05-27 17:48:12 665

原创 .Net 8连接 MoonShot AI Kimi

最近国产的Kimi免费了,咱们肯定得大大支持,查看了Api文档,发现没有.net版本对应的Api案例,所以以下针对一个API进行展示如何在.net中连接,其他Api接口使用方式相似。

2024-04-05 15:41:25 569 2

原创 .net 如何部署项目到Linux(Docker)

net 项目部署方式很多,常见的比如借助windows IIS管理器进行网站发布,此方式每次需要进行发布 拷贝覆盖代码,比较繁琐,当前常见的开发模式基于GIt,云部署与自动化发布紧紧关联,下面简单的探讨一下如何将.net 项目部署到docker中。环境准备:3. .net 运行时6.0。

2024-02-26 17:02:43 683 1

原创 .Net 8 服务 生命周期自动注入

我们基于依赖注入模式开发的时候,特别是在大型项目的时候,让让Program.cs 显得很臃肿,然后常用的就是拆分出来,但其实这只是换了一种方式往里面塞数据,目前流行的框架都支持自动注册服务,以下我们简单实现。通过实现接口,扫描程序集拿到需要注册的服务,然后进行特定生命周期注入。以上测试可以看到,找到我们标识了的对应的Type,然后进行注入。1.我们首先自定义生命周期接口,用于标识。2.程序集扫描,进行服务注册(核心)以上就是代码的全部,是不是很简单?2.打上断点,启动服务。

2024-02-04 10:04:10 500 1

原创 .Net 8 WebApi传入传出参数记录

我们日常工作中经常需要日志记录,常见的方式比如基于框架Log4net,NLog,Serilog,或者基于过滤器方式实现基于控制器/方法级别的记录,然后今天我们基于请求管道特性使用app.UseMiddleware方式实现全量请求记录。3.看一下CreateMiddleware方法,发现其实际是从IMiddlewareFactory拿到注入的中间实例,然后调用其内部的InvokeAsync方法。2.定义我们自己的中间件,我们可以实现接口IMiddleware,也可以不实现,只要定义InvokeAsync。

2024-01-26 15:44:34 1197 1

原创 .net 中的响应压缩

/实际上在这里按照自己的逻辑更换具体的流实现} = "myC";.Mode??//如果请求是Https的情况下,是否设置了允许Https情况下压缩的设置,即ResponseCompressionOptions的EnableForHttps属性设置||!//Response.Head里不能包含Content-Range头信息//Response.Head里之前不能包含Content-Encoding头信息。

2024-01-19 14:04:00 1511 1

原创 关于dynamic是否有装拆箱操作?

dynamic会跳过静态类型检查,所以编译的时候不会报错,有错误的话会在运行的时候报错,也就是我们说的是在运行时确定具体操作。,通过Rider或者visual studio 可以看到 var修饰的变量在编译时期就可以知道具体的类型。通过ILSPY分析代码,发现其本质是一个object

2024-01-19 10:39:42 513 1

原创 .net 8 WepApi简易路由分配实现

Admin统一中心简易实现方案

2024-01-13 10:50:59 632 2

原创 Asp.net BaseResult的设计

BaseReult的两种定义方式。

2023-12-04 13:53:31 44

原创 Asp.Net Core 集成Consul (windows)

最近在学习微服务,浏览了网上很多资料,对.net 集成Consul讲的有点模糊,所以打算写一个demo清晰一下流程,希望可以给大家带来帮助。最后我们去Consul网页就可以看到已经注册成功的实例了,以及服务console一直输出ok.3.自定义一个负载均衡:ConsulBalancer ,主要针对内部调用的时候做负载均衡。网页打开 localhost:8500,成功出现以下的页面即标识安装打开成功。4.服务注册:UseConsulRegistry。2.配置对应的实体:ConsulOption。

2023-12-01 13:00:07 474 1

原创 Asp.Net Core 7.0 基于JWT组织用户角色权限认证(二)

上一篇我们已经完成了权限校验以及授权的部分,本篇接下来我们分析一下如何基于组织用户角色进行权限管理。在本项目中,支持建立多组织,同一用户支持在不同组织下授予不同的角色。由于本人是新人,如果有好的见解或者看法欢迎和我沟通,互相学习进步。

2023-11-24 10:52:13 210 2

原创 Asp.Net Core 7.0 基于JWT角色权限认证(一)

Asp.Net Core 7.0集成JWT自定义Attribute权限认证。

2023-11-22 12:57:03 1374

原创 Quartz.net 动态定时任务

完整的定时任务模块,开箱即用,支持常见的操作。

2023-11-07 11:26:58 422

空空如也

空空如也

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

TA关注的人

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