随笔分类 - .NET Core
摘要:众所周知,微软于2023-11-14日发布了.NET 8的正式版。伴随着这个重要.NET版本的发布,微软也发布了一个全新的.NET云原生开发框架——.NET Aspire。 .NET Aspire提供了如下3个方面的能力,来帮助我们使用.NET开发分层、云就绪的可观测、本地与生产环境一致的分布式云原
阅读全文
摘要:我们在实际项目开发中,操作Http请求可以说是非常常见了,这里面就涉及到授权、格式转换、标头参数等,针对不同的项目,我们需要封装一个Http请求帮助类。 所以,今天给大家推荐一个Http客户端库,就能完全满足我们的日常需求。 项目简介 这是一个基于.Net开发的Http客户端库,它具备序列化、请求与
阅读全文
摘要:在Asp.Net Core中,管道往往伴随着请求一起出现。客户端发起Http请求,服务端去响应这个请求,之间的过程都在管道内进行。 举一个生活中比较常见的例子:旅游景区。 我们都知道,有些景区大门离景区很远,我们需要经过层层关卡才能到达景区。 我的请求最终就是去到景区,去到景区的整个过程就是管道,景
阅读全文
摘要:一、什么是中间件 请求处理管道由一系列中间件组件组成。每个组件在 HttpContext 上执行操作,调用管道中的下一个中间件或终止请求。 详情请看另外一篇文章:白话管道中间件 下图是中间件的管道模型图,有点类似过滤器。 二、中间件可以用来做什么? 在我们的应用程序当中和业务关系不大的一些需要在管道
阅读全文
摘要:简介 MassTransit 是一个免费的、开源的.NET 分布式应用程序框架。MassTransit 使创建应用程序和服务变得容易,这些应用程序和服务利用基于消息的松散耦合异步通信来实现更高的可用性、可靠性和可扩展性 特点 •易于使用和理解的 API,让您专注于解决业务问题•使用 RabbitMQ
阅读全文
摘要:前言 在我们很多应用中会遇到有一种基于一系列时间的数据需要处理,通过时间的顺序可以将这些数据点连成线,再通过数据统计后可以做成多纬度的报表,也可通过机器学习来实现数据的预测告警。而时序数据库就是用于存放管理这种有着时间顺序数据的,时序数据库一般都支持时序数据的快速写入、持久化、多纬度的聚合查询等基本
阅读全文
摘要:今天我们一起梳理下10个,比较受到大家欢迎的.NetCore开源框架项目。1、FytSoaCms 前后端分离CMS系统 项目简介 这是一个基于.Net 3构建的简单、跨平台、模块化建站系统。系统业务简单、代码清晰、层级分明、全新架构便于二次扩展开发。支持多种数据库,可用于OA、ERP、CRM、BI、
阅读全文
摘要:通过Filter来支持;分别有IResourceFilter AuthorizeFilter ActionFilter ExceptionFilter ResultFilter,Filter也被称为拦截器 那么 ASP.NET Core Filter如何支持依赖注入?可以通过全局注册,支持依赖注入。
阅读全文
摘要:一. docker compose服务编排简介 1. 背景 微服务架构的应用系统中一般包含若干个微服务,每个微服务一般都会部署多个实例,如果每个微服务都要手动启停,维护的工作量会很大: A. 要创建镜像 Dockerfile build image 或者去dockerhub拉取image B. 要创
阅读全文
摘要:.net core 自带一个基础的logger框架Microsoft.Extensions.Logging。 微软默认实现了Microsoft.Extensions.Logging.Console.dll。控制台的日志输出和Microsoft.Extensions.Logging.Debug.dll
阅读全文
摘要:Serilog 是一个用于 .NET 应用程序的诊断日志库。它易于设置,具有干净的 API,并且可以在所有最新的 .NET 平台上运行。尽管即使在最简单的应用程序中它也很有用,但 Serilog 对结构化日志记录的支持在检测复杂、分布式和异步应用程序和系统时大放异彩。 与 .NET 的许多其他库一样
阅读全文
摘要:前言 1、什么是async/await? await和async是.NET Framework 4.5框架、C#5.0语法里面出现的技术,目的是用于简化异步编程模型。 2、async和await的关系? async和await是成对出现的。async出现在方法的声明里,用于批注一个异步方法。光有as
阅读全文
摘要:FastEndpoints 是一个基于 .NET 6 开发的开源 webapi 框架,它可以很好地替代 .NET Minimal APIs 和 MVC ,专门为开发效率而生,带来了全新的开发模式和编码体验。 另外对于 .NET 的中间件、认证、授权、日志,依赖注入这些也都是支持的,甚至有些还进行了加
阅读全文
摘要:讲一讲 IQueryable 和 IEnumerable 的区别。 我们会在使用 LINQ 查询方法之后,又使用 ToList 等方法,将查询结果转换成集合。 如果我们不使用 ToList 呢? 比如这个示例: using var context = new BloggingContext();va
阅读全文
摘要:💻 前言 FreeSql 支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite/Firebird/达梦/Gbase/神通/人大金仓/翰高/Clickhouse/MsAccess Ado.net 数据库,以及 Odbc 的专门实现包。 FreeSql.Cloud 为
阅读全文
摘要:前言 前段时间需要在一个新项目里添加两个后台任务,去定时请求两个供应商的API来同步数据;由于项目本身只是一个很小的服务,不太希望引入太重的框架,同时也没持久化要求;于是我开始寻找在Quartz.Net、Hangfire之外,是否还有更为轻量级的框架满足我的要求,最终我选择了Coravel. 简介
阅读全文
摘要:通过Rider调试的方式看了下ASP.NET Core 5.0的Web API默认项目,重点关注Host.CreateDefaultBuilder(args)中的执行过程,主要包括主机配置、应用程序配置、日志配置和依赖注入配置这4个部分。由于水平和篇幅有限,先整体理解、建立框架,后面再逐步细化,对每
阅读全文
摘要:🌌 什么是多租户 维基百科:“软件多租户是指一种软件架构,在这种软件架构中,软件的一个实例运行在服务器上并且为多个租户服务”。一个租户是一组共享该软件实例特定权限的用户。有了多租户架构,软件应用被设计成为每个租户提供一个 专用的实例包括该实例的数据的共享,还可以共享配置,用户管理,租户自己的功能和
阅读全文
摘要:背景 利用代码发送邮件在工作中还是比较常见的,相信大家都用过SmtpClient来处理发送邮件的操作,不过这个类以及被标记已过时,所以介绍一个微软推荐的库MailKit来处理。 MailKit开源地址:https://github.com/jstedfast/MailKit 需要邮件功能 1、服务提
阅读全文
摘要:1 前言 在程序中,需要进行数据验证的场景经常存在,且数据验证是有必要的。前端进行数据验证,主要是为了减少服务器请求压力,和提高用户体验;后端进行数据验证,主要是为了保证数据的正确性,保证系统的健壮性。 本文描述的数据验证方案,是基于官方的模型验证(Model validation),自定义其返回格
阅读全文

浙公网安备 33010602011771号