C#
未读
C# 命名规范
作者为帮助C#开发者明确命名规范,系统梳理了常用命名方式及C#特有规则。大驼峰(PascalCase)用于类、接口(I前缀)、方法、属性、事件、常量、委托、命名空间、扩展类(Extensions后缀)及特性类(Attribute后缀);小驼峰(camelCase)用于方法参数和局部变量;私有字段则采用下划线前缀的小驼峰(_camelCase)。C#特有规范包括:异步方法需加Async后缀,事件处理方法命名格式为On+EventName,泛型类型参数用T前缀,私有/受保护方法仍用PascalCase,命名空间采用反向域名的PascalCase。作者通过速查表清晰列出了各命名方式的对应用途,助力开发者规范代码风格。
C#
未读
C# 反射 浅入浅出
作者介绍了C#的反射(Reflection),这是一种运行时动态检查和操作类型、成员及属性的API,位于System.Reflection命名空间。反射支持动态对象创建、方法调用、属性访问和特性读取,广泛应用于插件开发、依赖注入、ORM框架和元编程工具。关键API包括Type用于类型信息,GetMethod和GetProperty用于获取方法和属性,以及GetCustomAttributes用于处理自定义特性。作者强调,直接调用方法可能影响性能,建议使用委托或表达式树优化。反射增强了程序的灵活性和可扩展性,但需谨慎使用以避免性能瓶颈。
C#
未读
C# 语法糖与特性介绍
作者在文章中系统介绍了C#编程语言的核心特性,涵盖从C# 3.0到C# 11.0的关键功能,包括隐式类型推断、目标类型、对象初始化器、匿名类型等,这些特性通过简化变量声明和初始化提升代码可读性。文章详细探讨了索引与范围、本地函数、Lambda表达式(涉及委托结合、LINQ用法及表达式树),以及字符串处理如插值和逐字字符串。扩展方法允许在不修改原类型的情况下添加功能,而模式匹配提供了强大的类型检查和值匹配能力,涵盖基础、过滤组合及结构化模式。异步编程利用async/await实现同步风格的异步操作,ref/out/in关键字支持不同参数传递方式,params关键字则简化可变数量参数处理。作者通过代码示例展示了这些特性的实际应用,旨在帮助开发者高效编写C#代码。
C#
未读
C# 语法糖之 LINQ
作者阐述了LINQ(Language-Integrated Query),一种将查询功能直接集成到C#语言的技术,使查询成为一流语言构造,支持类型检查和IntelliSense,统一了不同数据源的查询方式。基本语法包括查询表达式和方法链,作者偏好后者。执行机制分为延迟执行(在枚举时执行)和即时执行(如聚合操作)。操作符涵盖过滤、投影、排序、分组、聚合等分类。提供程序如LINQ to Entities实现IQueryProvider接口,负责表达式树翻译到目标数据源。性能优化建议包括缓存结果、合理分批加载、最小化投影字段、表达式复用和谨慎使用PLINQ。
C#
未读
[开源] 服务器智能风扇调速工具
作者开发的 FanX 是一款基于 .NET 8 和 Blazor 的服务器风扇控制与监控平台,专为戴尔服务器设计(支持 BMC 设备也可使用)。该平台通过实时监控设备运行状态,并根据自定义或智能规则动态调节风扇转速,在确保系统温度和功率安全的同时有效降低噪音。核心功能包括实时监控功率、风扇转速、CPU温度及主板温度,支持多级温度-转速映射曲线的智能控制,提供企业微信机器人、Webhook等多种通知渠道。作者还设计了灵活的规则配置系统,允许基于不同温度条件为特定风扇设置精确转速,相比服务器自带自动调速更为精细。项目支持 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动画和Telegram贴纸文件。该工具支持多种输出格式,包括GIF、WebP、APNG、MP4、MKV、AVIF和WebM,具备批量处理、自定义输出设置、并发任务加速等强大功能。用户可直接解析和下载Telegram贴纸包,调整播放速度、帧率、分辨率和转换质量。工具采用现代化界面设计,依赖项自动安装,简化了设置流程。支持Windows、macOS和Linux系统,解决了此前Telegram机器人转换效率低、文件大小限制等问题,为用户提供更高效、更灵活的动画文件转换解决方案。
[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。

