刷新
C#异步编程的好处

博主头像 原文链接:https://www.cnblogs.com/ysmc/p/18798097 C# 异步编程的好处 异步编程是C#中非常重要的特性,它能让你的程序更高效、更流畅。我来用简单的方式解释它的好处: 1. 七窍玲珑心 - "边敲代码边和女朋友通话" 同步代码就像你敲代码时必须双手离开键盘才能接 ...

深入理解C#笔记

博主头像 C#1 //属性可以自动实现 public string Name{get; private set;} public static List<Product> GetSampleProducts() { return new List<Product>//列表直接初始化 { new Product ...

用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp智能体框架开发语音交互

博主头像 前言 前段时间太忙了博客一直都没来得及更新,但是不代表我已经停止开发了,刚好最近把语音部分给调整了一下,所以就来分享一下具体的内容了。我想说一下,更新晚还是有好处的,社区已经有很多的小伙伴自己实现了一些语音对话功能的案例,比如小智也有.NET客户端了,还有就是一些树莓派对接实时语音api实现对话的功 ...

.NET 依赖注入深入详解

博主头像 原为链接:https://www.cnblogs.com/ysmc/p/18796964 .NET 依赖注入深入详解 依赖注入(Dependency Injection, DI)是.NET Core .NET 5/6/7/8/9/10+中最重要的设计模式之一,下面我将从多个维度详细解释它的工作原理和 ...

.net core项目docker部署

博主头像 此为手动打包更新版 发布.net core程序,然后放到linux目录:/data/app/docker_name 一、打包到容器 1、安装docker 2、编写Dockerfile (放到目录:/data/app/docker_name) 1 #See https://aka.ms/contain ...

docker常用命令

博主头像 docker的安装很多,就不说了 docker常用命令: 注:以下命令中,凡涉及到容器id的,都可以用容器id前三位,或者容器name 重启Docker服务:systemctl restart docker / service docker restart关闭Docker服务:docker serv ...

Longbow.Tasks 实战—任务持久化

博主头像 原文地址 https://www.cnblogs.com/ysmc/p/18795934 之前写过一个文章,是介绍Longbow.Tasks这个定时任务调度库的,然后不少小伙伴问过我,怎么东西怎么用,也怪我,在那篇文章结尾我讲过要出实战的,后来抛之脑后了,实在惭愧。 简单讲下这个库的情况,Longb ...

业务系统基础框架-Winform版-权限

权限以树行结构呈现 可对权限进行添加,编辑,删除操作,也可以查看拥有此权限的账号 “启用验证”为true时这个权限是开始验证的,否则就不开启权限验证, “启用验证”用于中途某个按钮不验证权限了,就把这个权限不开启验证就可以了,不然就得去把所有人都分配上这个权限 编辑权限信息 查看拥有某个权限的账号 ...

依赖注入接口多实现如何获取指定服务

博主头像 原为链接 https://www.cnblogs.com/ysmc/p/18794061 在上一个文章中,我们讲过 键控服务 服务,可惜的是这个需要 .NET 8 才能使用,那我们在 .NET 8 之前应该怎么找到我们需要的服务呢,本文给大家讲讲使用特性的方式 本人依旧秉承着短小精悍,废话不多,直接 ...

开发的设计和重构,为开发效率服务

博主头像 软件开发有点类似于艺术品的雕刻,需要不断的打磨。在我们基于一套成熟的架构开发一套软件后,往往都还是需要反复的推敲,进行不断的重构优化,使得重复的代码、硬编码等地方越来越少,也使得某些逻辑越来越有弹性化。软件开发和艺术品又有所不同,艺术品可能很容易完工并封刀,而软件开发却是持续的改进,软件最终的持续改... ...

HttpClient 使用(二)流式请求

博主头像 原文地址:https://www.cnblogs.com/ysmc/p/18780674 近年AI风靡全球,我们日常见到的最多的就是跟AI聊天,极大减少了我们的搜索时间,不过大家也要注意甄别AI回答的正确性,身体不舒服还是老老实实看医生。 AI聊天的输出是逐字输出的,有些小伙伴就很好奇这个是怎么实现 ...

依赖项注入-键控服务

博主头像 键控服务是指使用密钥注册和检索依赖项注入 (DI) 服务的机制。 通过调用 AddKeyedSingleton (或 AddKeyedScoped 或 AddKeyedTransient)来注册服务,与密钥相关联。 使用 [FromKeyedServices] 属性指定密钥来访问已注册的服务。 以往 ...

ASP.NET Core WebApi+React UI开发入门详解

博主头像 在前段时间,有粉丝反馈能否写一篇基于ASP.NET Core Web Api+React UI进行Web开发的文章,经过查阅相关资料,发现Visual Studio 2022已经集成相关模板,可以在Visual Studio中直接创建项目项目,今天以一个小例子,简述ASP.NET Core Web ... ...

C# - 获取枚举描述 - 使用增量源生成器

博主头像 前言 C# 获取枚举描述的方法有很多, 常用的有通过 DescriptionAttribute 反射获取, 进阶的可以加上缓存机制, 减少反射的开销。今天我们还提供一种更加高效的方法,通过增量源生成器生成获取枚举描述的代码。这是在编译层面实现的, 无需反射, 性能更高。 本文的演示代码基于 VS20 ...

WinForm 使用 Win32 API 实现的无边框窗口

博主头像 WinForm 使用 Win32 API 实现的无边框窗口 前言 时光荏苒,转眼已近是2025年了。不知不觉两年多没有研究代码了,在这期间 .NET 10 都快 RC 了,前几天刷手机看到张队公众号里有关于 .NET 9.0 AOT 发布的内容,所以写了这些代码来测试一下 AOT 编译的效果,并评估 ...

针对于基于surging的dotnetty组件内存泄漏问题

一、概述 前段时间客户碰到基于surging内存泄漏问题,邀请我来现场帮忙解决,对于dotnetty 我一直又爱又恨,因堆外内存DirectByteBufferChunk 中PoolChunk映射分配的16mb始终无法销毁,后面设置优化了dotnetty 环境变量参数,未在同一线程下导致引用计数出现 ...

<1···212223···50>