C#
未读
C# 之委托与事件
作者在文章中系统阐述了委托和事件在C#编程中的核心概念。委托是一种类型安全的函数指针,封装具有相同签名的方法引用,支持动态调用、回调机制和多路广播(一次执行多个方法),并确保编译期类型安全。声明格式为`public delegate TResult MyDelegate<T1,…,TResult>(T1 arg1, …)`,可通过匿名方法或Lambda表达式简化实现,内置类型如Action、Func和Predicate提供便捷支持。事件基于委托的发布/订阅模式,解耦发布者和订阅者,通过`event`关键字声明,订阅使用`+=`和`-=`操作符,触发时需空检查和封装。作者通过文件下载进度、按钮点击事件、自定义排序和定时任务调度等场景展示其应用,并与Python的列表循环和Java的接口监听器进行对比,突出委托和事件在解耦和灵活性上的优势。
C#
未读
C# 语法糖与特性介绍
作者在文章中系统介绍了C#语言的演进特性,包括从C# 3.0引入的隐式类型推断、对象初始化器和Lambda表达式,到C# 9.0的record类型和init访问器。关键功能如异步编程利用async/await简化异步操作,模式匹配提供灵活的条件检查,Span<T>优化内存处理减少GC压力。这些特性共同增强代码可读性、简洁性和性能,适用于数据传输、领域驱动设计和高效计算等场景,为开发者提供了强大的现代编程工具集。
C#
未读
C# 语法糖之 LINQ
作者阐述了LINQ(Language-Integrated Query),一种将查询功能直接集成到C#语言的技术,使查询成为一流语言构造,支持类型检查和IntelliSense,统一了不同数据源的查询方式。基本语法包括查询表达式和方法链,作者偏好后者。执行机制分为延迟执行(在枚举时执行)和即时执行(如聚合操作)。操作符涵盖过滤、投影、排序、分组、聚合等分类。提供程序如LINQ to Entities实现IQueryProvider接口,负责表达式树翻译到目标数据源。性能优化建议包括缓存结果、合理分批加载、最小化投影字段、表达式复用和谨慎使用PLINQ。
C#
未读
[开源] 服务器智能风扇调速工具
FanX是基于.NET 8和Blazor开发的服务器风扇控制与监控平台,专为戴尔服务器设计,支持实时监控设备运行状态并根据智能规则动态调节风扇转速,在保证系统温度和功率安全的同时有效降低噪音。平台提供实时监控功率、风扇转速、CPU温度及主板进出口温度等功能,支持自定义温度-转速映射曲线,可根据不同传感器数据灵活控制多个风扇。用户可通过Web界面配置BMC信息、设置风扇控制规则、配置多种通知渠道(企业微信、Webhook、Telegram等),并支持日志管理和历史数据可视化。平台支持Docker部署,提供中英文界面切换及深色/浅色主题,管理员与普通用户分级权限管理,相比服务器自带调速方案更为灵活精细。
C#
未读
C# Lottie 动画控件库
[智谱AI 摘要生成异常:Server returned HTTP response code: 429 for URL: https://open.bigmodel.cn/api/paas/v4/chat/completions | {"error":{"code":"1302","message":"您当前使用该API的并发数过高,请降低并发,或联系客服增加限额。"}}]
C#
未读
[开源] Tgs(电报表情包) / Lottie 格式转换工具客户端
LottieViewConvert是一款跨平台客户端工具,专为高效转换Lottie动画设计,支持Windows、Linux和macOS系统。该工具提供多格式输出选项,包括GIF、WebP、APNG、MP4、MKV、AVIF和WebM,满足不同使用场景需求。用户可批量处理文件,自定义帧率、分辨率、播放速度和转换质量,显著提升工作效率。工具内置Telegram集成功能,可直接解析和下载贴纸包,同时支持TGS和Lottie文件输入。采用现代化SukiUI界面设计,依赖项自动安装,并发任务处理加速批量转换,为用户提供流畅的使用体验。
[C#/Python] AoB Scan(内存扫描)方式获取微信小程序Token/Cookies
该文章针对微信小程序升级至x64后,原有AoB Scan(32位)获取Token失效的问题,提出新的解决方案。通过mitmproxy抓包分析定位小程序鉴权信息(如JWT固定字段),结合Cheat Engine扫描内存区域确定关键字段位置,再利用C#或Python编程实现自动化获取。具体步骤包括设置代理抓包、解码分析协议头、CE搜索固定字符串、编写程序扫描进程内存。需注意C#需选x64平台并管理员运行,Python同样需管理员权限。文章提供了工具下载及源代码,强调仅供技术研究,实际应用需根据具体场景调整扫描内容。
C#
未读
C# WaveProgressBar 控件
为满足公司球形容器项目需求,开发者最初考虑Handycontrol的WaveProgressBar控件,但因项目体量过大转而基于GitHub上日本人的开源版本进行修改。Handycontrol原版效果虽佳但风格偏工业,不符合项目需求。修改后的WaveProgressBar支持自定义参数,包括进度值(Progress)、最外层填充色(WaveFillColorBrush)、波浪背面效果色(WaveColorBrush)及进度百分比颜色(FontBrush),最终实现效果符合预期。项目已开源,地址为SwaggyMacro/WaveProgressBar。