-
Web Transport 简介WebTransport 是一个新的 Web API,使用 HTTP/3 协议来支持双向传输。它用于 Web 客户端和 HTTP/3 服务器之间的双向通信。它支持通过 不可靠的 Datagrams API 发送数据,也支持可靠的 Stream API ...
-
↓推荐关注↓前言抛开死锁不谈,只聊性能问题,尽管锁总能粗暴的满足同步需求,但一旦存在竞争关系,意味着一定会有线程被阻塞,竞争越激烈,被阻塞的线程越多,上下文切换次数越多,调度成本越大,显然在高并发的场 ...
-
前言接口我们都很了解了,在编写代码的时,如果有一定的抽象思维,就会将不同对象的相同行为抽象出来,放到接口中,我们最熟悉的就是在接口中写一堆方法的定义。微软似乎一直都想在接口上做改进。在 C# 8 中,接口中 ...
-
↓推荐关注↓前言在本章,我们将学习如何定制ASP.NET Core认证机制。微软把安全认证当做ASP.NET Core框架的一部分,足以看见它是应用程序非常最重要的内容。在文将介绍如何定制ASP.NET Core认证UI的基本实现,以及如 ...
-
↓推荐关注↓前言微软宣布正式推出 .NET 7 ,使用 .NET 7 可以轻松地将 .NET 7 项目容器化,在 GitHub 操作中设置 CI/CD 工作流,并实现云原生可观察性。.NET 7 是标准期限支持 (STS) 版本,将支持 18 个月。在整个 ...
-
前言在之前学习到如何将一个类库中的WebApi加载,那么本文就刚好用到了。目的实现一个可以动态加载,动态更新服务的插件需求。插件的好处是什么?我们可以编写代码来动态去替换或者增加现有服务接口等,使用得当的情 ...
-
↓推荐关注↓一、前言对于简单的系统而言模型与数据可以进行直接的映射,比如说三层模型就足够支撑项目的需求了。对于这种简单的系统我们过度设计说白了无异于增加成本,因为对于一般的CRUD来说我们不用特别区分查询 ...
-
前言随着今年6月份的 HTTP/3 协议的正式发布,它背后的网络传输协议 QUIC,凭借其高效的传输效率和多路并发的能力,也大概率会取代我们熟悉的使用了几十年的 TCP,成为互联网的下一代标准传输协议。在去年 .NET 6 发 ...
-
↓推荐关注↓前言在 dotnet 6 里,推荐的网络通讯是使用 HttpClient 类型,在国内诡异的网络环境下,有很多弱网环境需要考虑,其中很重要一点就是网络超时。本文将来告诉大家如何合理使用 HttpClient 的超时机制正文 ...
-
↓推荐关注↓前言我们在做 Api 接口时,相信一定会有接触到要给传输的请求 body 的内容进行加密传输。其目的就是为了防止一些敏感的内容直接被 UI 层查看或篡改。其实粗略一想就能想到很多种方案,但是哪些方案是目 ...
-
↓推荐关注↓一、记录(record)C# 9.0 引入了记录类型。 可使用 record[/pre] 关键字定义一个引用类型,以最简的方式创建不可变类型。这种类型是线程安全的,不需要进行线程同步,非常适合并行计算的数据共享。它减 ...
-
↓推荐关注↓背景2008 年前后的 Midori 项目试图构建一个以 .NET 为用户态基础的操作系统,在这个项目中有很多让 CLR 以及 C# 的类型系统向着适合系统编程的方向改进的探索,虽然项目最终没有面世,但是积累了很多的 ...
-
↓推荐关注↓前言.NET Core 3.x[/pre]和.NET Standard 2.1[/pre]支持C# 8.0[/pre]。一、Readonly 成员可将 readonly[/pre] 修饰符应用于结构的成员,来限制成员为不可修改状态。这比在C# 7.2[/pre]中将 readonly[/pr ...
-
前言数据结构是计算机存储、组织数据的方式;在不同的场景中,通过分析写入查询的频率,选择合适的数据结构,对程序性能的提升有很大的帮助。常用的数据结构有:数组(Array)、栈(Stack)、队列(Queue)、链表(L ...
-
↓推荐关注↓所需成员C# 11required[/pre]为属性和字段引入了一个新的修饰符,以强制构造函数和调用者初始化这些值。如果初始化对象时缺少必需的成员,则会出现编译错误。// Initializations with re ...
-
简介对于开发人员来说,Git 是我们经常使用的工具,在每次编写完代码并提交后,我们可以通过 git diff 来对比不同版本之间的代码的差异,当然也可以借助一下开发工具, 这样可以让我们很直观的看到修改了哪里?不同版 ...
-
↓推荐关注↓背景最近遇到一个比较特殊需求,需要修改一个的RabbitMQ消费者,以实现在消费某种特定的类型消息时,延迟1小时再处理,几个需要注意的点:延迟是以小时为单位不是所有消息都延迟消费,只延迟特定类型的 ...
-
前言给大家推荐一个基于C#开发的、跨平台,监控GC、CPU、内存、机器网络、磁盘空间等关键指标的工具。现在的云服务器一般都有提供服务器性能监控功能,但是针对部署在自己服务器的项目,我们就需要对服务器运行情况 ...
-
前言在很多项目中经常会出现需要动态解析表达式和计算的场景,比如一些自动审核规则,或者是一些变量的值通过维护的公式在运行过程中动态算出;由于场景需求,都需要比较灵活的配置对应的表达式,然后希望在需要的时 ...
-
前言我们公司的 VPN 用自己的电脑连公司的台式机的时候需要用 IP 地址,有一次尝试去连的时候发现连不上,第二天到公司发现 IP 变掉了,不是之前连的 IP 了,于是就想写一个简单 Windows 服务来监控台式机的 IP 变化 ...
-
↓推荐关注↓前言关于网络方向的内容,希望对部分读者有帮助。WinDivert:https://github.com/basil00/DivertWindivertDotnet:https://github.com/xljiulang/WindivertDotnet一、WinDivert介绍WinDivert是windows下 ...
-
↓推荐关注↓前言给大家推荐一个基于微软反向代理组件Yarp开发的Api网关。项目简介我们都知道在微服务架构中,大型服务都会被拆分独立的微服务,这时候我们就需要有个统一的入口来管理。这时候就可以用这个框架来构 ...
-
前言给大家推荐一个C#开发的非常实用的缓存中间件,支持各种缓存。在我们实际开发中,缓存是经常用到的。特别是一些需要重复执行且消耗资源的操作时,我们都会把结果存储在缓存中,下次需要用到直接从缓存读取。在.N ...
-
↓推荐关注↓进程与线程进程是应用的执行实例,可狭义理解为一个应用程序就是一个进程。启用一个应用程序时就是启动了一个进程。该应用运行所需的所有地址空间,代码,数据及系统资源都属于此进程。进程所使用的所有 ...
-
↓推荐关注↓.NET 7 RC1 发布在9月14号,.NET 7 RC1正式发布了。按照微软的说法This is the first of two release candidates (RC) for .NET 7 that are supported in production.从RC1开始,就是生产支持了。但是大 ...
-
↓推荐关注↓前言给大家推荐一款高性能敏感词检测开源库。项目简介这是一款基于.NET 开发的、高性能敏感词工具箱,支持繁简互换、全角半角互换,拼音模糊搜索等功能。功能强大、高性能,秒级检测亿级别的文章。技术 ...
-
↓推荐关注↓前言由于部署个人博客系统的服务器只有2G内存,每次利用jenkins编译,发布的时候jenkins老是挂,因此新买了一台轻量应用服务器,专门用于个人博客系统的持续发布任务,下面讲解如何利用jenkins实现系统 ...
-
↓推荐关注↓前言记录自己进行WinUI项目实践的博客,项目开源地址如下,觉得有帮助的可以去看看,因为项目都开源了,所以保姆级的讲解肯定不如直接看代码来的实在了。电子脑壳项目地址(https://github.com/maker-com ...
-
↓推荐关注↓什么是性能测试在软件开发中,性能测试是一种常见的测试实践,用于确定系统在特定工作负载下的响应能力和稳定性表现。它还用于排查,观察,验证系统在其他方面的质量。例如可扩展性,可靠性和资源使用情 ...
-
↓推荐关注↓前言本章将介绍基于ASP.NET Core的整洁架构的设计理念,同时基于理论落地的代码模型,包括文件夹、文件、项目的组织形式以及项目的依赖关系,为企业级可扩展的架构奠定基础。本章学习主题包括:整洁架构 ...
-
↓推荐关注↓前言给大家推荐一个开源的微服务、分布式开源架构,也可用于单体架构开发。项目简介这是一个轻量级的微服务架构,支持经典三层架构和DDD架构模式开发,技师选型都是目前主流的技术。是一个前后端分离架 ...
-
一、前言方便大家在线浏览,先声明,模板来自下面的仓库:仓库名:大屏数据展示模板 作者:lvyeyou开源协议:MIT仓库地址:https://gitee.com/lvyeyou/DaShuJuZhiDaPingZhanShi目前此项目处于暂停状态[/pre], ...
-
↓推荐关注↓前言微服务说起来高大尚,实际撸一遍来试试看,用现在比较常用的微服务框架,Consul 和 Ocelote 做一个 Demo,一起来试试吧!说在前面的话准备好环境,拉取源代码,按照每个章节中的【实践操作】进行操 ...
-
↓推荐关注↓前言本文内容主要是关于创建后台服务,用于异步运行任务的功能,我们会使用此功能定期从远程服务获取数据。本文的主题主要包括:IHostedService[/pre]介绍BackgroundService[/pre]介绍Worker Service[/p ...
-
前言.NET 又双叒叕出新功能了, 就在前几天,.NET 团队发布博客,宣称在 .NET SDK 中内置了对 .NET 应用容器化的支持。小试牛刀在正式介绍它之前,先通过一个简单的例子,看下它是如何使用的。# 创建一个新项目 ...
-
↓推荐关注↓前言1、什么是async/await?await和async是.NET Framework 4.5框架、C#5.0语法里面出现的技术,目的是用于简化异步编程模型。2、async和await的关系?async和await是成对出现的。async出现在方法的声明 ...
-
↓推荐关注↓前言C#中判断字段是否为空或者Null的时候,我们一般会使用到IsNullOrEmpty和IsNullOrWhiteSpace方法,这两个方法在大部分情况下判断的结果是一致的,但是有些情况下是不一致的。正文我们创建了一个  ...
-
↓推荐关注↓一、前言1.1、BaGet 介绍BaGet 是一个轻量级的,开源的,跨平台的 Nuget 和 symbol 服务器。1.2、环境介绍操作系统:CentOS 7使用 Docker 安装二、安装步骤2.1、配置文件登录 Linux 服务器以后,在 /roo ...
-
↓推荐关注↓前言.NET 定时组件生态实在太强大了,写下此文只希望能供大家多一个选择,不想重复造轮子,实在是事出有因。高中读书那会,盛大传奇是最火爆的网络游戏,我和我的同学们都对它有过沉迷,甚至到上班几年 ...
-
↓推荐关注↓前言前段时间需要在一个新项目里添加两个后台任务,去定时请求两个供应商的API来同步数据;由于项目本身只是一个很小的服务,不太希望引入太重的框架,同时也没持久化要求;于是我开始寻找在Quartz. ...
-
前言在我们的日常使用中经常会遇到统计某一段代码或者某一个过程的耗时时间,那么常用的方式有哪些呢?DateTime在一些代码里有看到这种方式,最简单的使用方式,也是不太精准的一种方式,想要相对准确一些的时间不建 ...
-
↓推荐关注↓FreeIM 是什么?FreeIM 使用 websocket 协议实现简易、高性能(单机支持5万+连接)、集群即时通讯组件,支持点对点通讯、群聊通讯、上线下线事件消息等众多实用性功能。ImCore[/pre] 已正式改名为 FreeI ...
-
↓推荐关注↓前言常用的定时任务组件有 Quartz.Net 和 Hangfire 两种,这两种是使用人数比较多的定时任务组件,个人以前也是使用的 Hangfire ,慢慢的发现自己想要的其实只是一个能够根据 Cron 表达式来定时执行函数 ...
-
前言字符串的截取匹配操作在开发中非常常见。StartsWith()方法用来判断当前字符串是否是以另外一个给定的子字符串“开头”的,根据判断结果返回 true 或 false。Substring()的作用就是截取父字符串的某一部分。正文 ...
-
前言前些年做云盘产品的时候,一个很核心的功能就是 Office 文件预览,当时还没有使用 .NET Core ,程序部署在 Windows Server 服务器上,文件预览的方案采用了微软的 OWA 。目前在做的零代码产品中的表单附件控件, ...
-
↓推荐关注↓概述本文将会介绍 为什么不推荐对外公开那些使用 Task.Run[/pre] 将同步方法包装为异步方法的方法。注:我会对照原文进行逐句翻译,但是考虑到中西方表达方式以及中英文语法的差异,我会适当的修 ...
-
↓推荐关注↓前言在开发的过程中上传文件或者导入数据是一件很常见的事情,导入数据可以有两种方式:1、前端上传文件到后台,后台读取文件内容,进行验证再进行存储2、前端读取数据,进行数据验证,然后发送数据到后 ...
-
前言Entity Framework 7 包括一些已被要求的流行功能,其中之一是批量操作。Julie Lerman 的一条推文(https://twitter.com/julielerman "Julie Lerman 的一条推文")引起了我的注意,我不得不亲自尝试一下。推文地址 ...
-
前言用于 WPF 应用程序的轻量级 UI 工具包,提供经典和增强的 Windows 视觉效果:仓库信息仓库地址:https://github.com/benruehl/adonis-uiDemo:https://github.com/benruehl/adonis-ui#demo有哪些内容?几乎所有 W ...
-
前言由于疫情的缘故,很多商家都把线下的战场转移到线上了。而小程序就成为商家越来越看中的新战场,因为它能够帮助克服疫情对于经济的影响,开辟新的零售模式。给大家推荐一款开源的小程序商城系统。项目简介这个是 ...