.NET周刊【6月第3期 2025-06-15】

文章#

C# 锁机制全景与高效实践:从 Monitor 到 .NET 9 全新 Lock#

https://www.cnblogs.com/code-daily/p/18924622

本文介绍了线程安全及锁的基本概念,强调了共享资源在多线程编程中的重要性。线程安全确保多个线程对同一资源的访问不会导致数据损坏。竞态条件体现了缺乏适当同步机制的风险。锁作为同步工具,确保共享资源的互斥访问,阻止多个线程同时使用它。Monitor作为C#中的锁机制,提供了对临界区的访问控制。System.Threading.Lock引入了更高效的互斥锁机制,简化了锁的管理,降低了死锁的风险。通过有效使用锁,开发者可以提升程序的并发性能和稳定性。

C#-Visual Studio工具使用实践#

https://www.cnblogs.com/anding/p/18919985

本文介绍了Visual Studio的基础配置与常用快捷键,包括复制粘贴、全局搜索、多光标等操作,帮助用户提升编程效率。建议安装企业版以获取更多功能。文章还提到编程字体的选择,推荐JetBrains Mono、Fira Code等可提升编码体验的字体。此外,作者建议更改视觉主题,更适合长时间编程。通过使用内置的代码片段功能,开发者可以快速输入常用代码,提高开发效率。该文章实用性强,适合C#开发者。整体内容清晰,信息详尽。

[原创]《C#高级GDI+实战:从零开发一个流程图》第02章:画一个矩形,能拖动!#

https://www.cnblogs.com/lesliexin/p/18919737

本文从画可拖动矩形的基本功能入手,详细介绍了实现过程。首先展示了预期效果,包括单一矩形、多矩形以及不同颜色矩形的应用。接着,简要说明了实现原理,提供了编码步骤,如设计器设置、矩形绘制及鼠标事件处理。文中涉及GDI+技术,通过具体代码示例,逐步指导读者完成矩形的拖动功能。整体内容逻辑清晰,易于跟随,适合初学者了解流程图开发的基础知识。

自动 GitHub 20 种语言翻译工具 - OpenAiTx 开源免费#

https://www.cnblogs.com/ITWeiHan/p/18920154

此文章介绍了一个基于.NET8开发的自动GitHub语言翻译工具OpenAiTx。用户只需简单更换网址即可进行AI翻译。该项目永久免费,开放源代码,旨在为GitHub上所有项目提供多语言翻译支持。用户能够通过复制badges在自己的GitHub Readme中显示翻译状态。文章详细描述了使用步骤,并提供了演示视频链接。每台主机每天可处理多个项目,具有良好的实用性和及时性。

WineHQ 发布的 Framework Mono 6.14 的这个特性对Windows Forms 用户来说肯定很感兴趣#

https://www.cnblogs.com/shanyou/p/18923085

微软于2024年8月将Mono项目正式捐赠给WineHQ,标志项目进入开源社区主导的新阶段。2025年3月,WineHQ发布了版本Framework Mono 6.14,主要优化了X11平台下的Windows Forms,提高了跨平台应用的稳定性与性能。该版本在图形渲染效率、响应性与资源管理以及特定问题修复方面进行了重大改进。图形渲染效率提升了复杂表单的帧率稳定性;响应性增强了UI线程的流畅度;解决了.NET应用退出时的卡顿问题。开发者建议升级至wine-mono 7.0.0及以上版本以享受完整的优化效果。

提升Avalonia UI质感,跨平台图标库选型实践#

https://www.cnblogs.com/deali/p/18926529

本文讨论了StarBlog工具的图标更新,使用FontAwesome替代Emoji,以提高跨设备的一致性。文中详细介绍了Avalonia生态中的两个图标库Icon.Avalonia和IconPacks.Avalonia,提供了使用FontAwesome的说明,包括安装、注册、布局文件添加、使用方式及自定义图标大小和动画效果。作者分享了具体代码示例,展示如何将图标独立使用、附加到控件以及作为图像源使用,增强了开发者的实用性与便捷性。

C# WinForms 实现打印监听组件#

https://www.cnblogs.com/shenchuanchao/p/18928583

这篇文章介绍了一款用于Windows桌面的打印监听组件。它适用于企业级应用,支持多打印机任务的实时监控。文章详细介绍了主界面和托盘集成,使用WinForms界面,方便用户管理打印机。组件自动检测并管理本地打印机,提供设置默认打印机和查看属性的功能。文中还展示了相关代码段,展示如何绑定打印机列表和设置默认打印机。整体功能清晰且实用,适合企业需求。

一个开源免费、功能丰富的 WPF 自定义控件资源库#

https://www.cnblogs.com/Can-daydayup/p/18925322

本文介绍了一个开源的WPF自定义控件资源库WPF-ControlBase,功能丰富且免费(MIT许可证)。WPF是构建具有丰富用户界面的Windows桌面应用程序的强大框架,具备灵活布局、数据绑定和动画效果。文章提供了多个解决方案的源代码,包括演示项目和NuGet包的引用。同时,作者鼓励用户访问GitHub获取更多信息,并支持项目。该资源库已被列入优秀的C#/.NET/.NET Core项目推荐中,以帮助开发者获取最新的动态和最佳实践。

MinHook 如何对.NET底层的 Win32函数 进行拦截#

https://www.cnblogs.com/huangxincheng/p/18920461

本文介绍了如何使用MinHook库来拦截.NET SDK之外的Win32函数。作者首先提到.NET外挂Harmony的局限性,然后推荐了MinHook作为解决方案,并提供了项目链接。文章包含一个简单的案例,演示如何利用PInvoke来拦截MessageBox函数。代码片段清晰易懂,有助于读者快速上手。MinHook的使用方法包括初始化、安装和卸载钩子,整体结构合理,逻辑紧密,满足技术读者的需求。

C# 中委托和事件的深度剖析与应用场景#

https://www.cnblogs.com/powertoolsteam/p/18926505

本文探讨了C#编程中的委托和事件的基本概念及应用。委托是一种类型安全的函数指针,用于实现回调机制。文章详细介绍了委托的定义、实例化及调用,并提供了多个示例代码。多播委托可以引用多个方法,支持依次调用和管理这些方法。这些内容对于提高C#代码的效率和可维护性非常重要。

GGTalk 开源即时通讯系统源码剖析之:远程磁盘 (低调赠送GGTalk最新源码)#

https://www.cnblogs.com/justnow/p/18920352

本文探讨了GGTalk开源即时通讯系统中新增的远程磁盘功能及其源码实现。首先,定义了消息协议以支持远程磁盘的功能。在交互媒体类型中添加了远程磁盘(RemoteDisk),并结合以前的交互类型定义了请求、应答等通信模式。接着,介绍了如何在GGTalk客户端项目中请求访问对方磁盘,包括检查用户状态和发送媒体通信请求。最后,提供了代码示例来展示具体实现。这篇文章明确、实用,适合开发者参考。

[原创]《C#高级GDI+实战:从零开发一个流程图》第01章:有什么用、有什么效果?#

https://www.cnblogs.com/lesliexin/p/18907919

本文探讨GDI+在现代应用中的作用,主要集中在Winform中的自定义控件开发。文章展示了使用GDI+实现复杂程序的全方位技巧,特别是性能优化。尽管GDI+使用较少,但其原理可应用于其他绘图技术,如canvas和skia。文章还介绍了制作高效流畅的流程图和其他二维图形操作的可能性。最终提供了基于LCanvas开发的教程,旨在促进技术交流与学习。

不写一行代码 .NET 使用 FluentCMS 快速构建现代化内容管理系统(CMS)#

https://www.cnblogs.com/Can-daydayup/p/18922861

FluentCMS是基于ASP.NET Core与Blazor构建的现代化开源内容管理系统。它满足了现代CMS对灵活性、可扩展性和用户友好的需求,支持无头CMS功能,适合多种数字应用场景。系统具备快速运行、可扩展、响应式设计和多语言支持等特点,提供媒体管理和SEO优化工具。支持多种数据库配置,包括LiteDb、MongoDB、SQLite等,用户可通过简单设置快速定制自己的CMS。项目源代码可在GitHub和Gitee找到,倡导开源社区参与和贡献。

C#/.NET/.NET Core技术前沿周刊 | 第 41 期(2025年6.1-6.8)#

https://www.cnblogs.com/Can-daydayup/p/18922869

这篇文章介绍了C#/.NET/.NET Core技术的最新动态和实践,包括面试宝典、简化C#运行方式、优秀项目推荐以及日志缓冲功能等内容。面对快速发展的技术,文章强调模式匹配的核心特性及其对代码可读性的提升,同时也涵盖了在树莓派上应用.NET开发WiFi配网功能的实用案例,推动技术的实际应用与学习。

一个基于 .NET 8 + Ant Design Blazor 开发的简洁现代后台管理框架#

https://www.cnblogs.com/Can-daydayup/p/18927715

Caviar 是一个基于 .NET 8 和 Ant Design Blazor 开发的现代后台管理框架,支持多语言和多种设备。它具有自动代码生成、字段权限和数据权限等功能,代码实现100%隔离。此外,框架兼容多种数据库,内置多个管理模块。其开源项目在 GitHub 和 Gitee 上提供,方便用户查看和使用,鼓励社区参与贡献。该框架简单易用,提高开发效率,并已被收录进优秀项目推荐中。

https://www.cnblogs.com/dragonet-Z/p/18928900

该文章详细介绍了C#实现欧姆龙HostLink通讯协议的过程,涵盖了协议背景、PLC内存区域、数据类型以及RS232接线等基础知识。文章描述了如何通过C-Mode和FINS-Mode两种模式实现PC与PLC的数据读写,提供了高效的通讯方式和方法。文章展示了C#核心实现,包括FCS校验码生成和串口通讯,还附带了控制台测试项目,验证了通讯库的功能。内容清晰明了,技术深度较高,具有较好的实用性和时效性。整体结构合理,具有一定的原创性并引用了相关资料。

C# 与低代码平台的融合:以活字格为例的 Web API 开发实践#

https://www.cnblogs.com/powertoolsteam/p/18924171

本文探讨了低代码平台与 C# 的结合,重点介绍了如何在葡萄城公司的活字格平台上使用 C# 创建服务端 Web API。文章详细讲解了 C# Web API 的基本概念、优势以及创建过程,包括环境准备和项目设置。它强调了模块化设计、RESTful 架构的支持、跨平台性以及安全性等特点。同时提供了具体的代码示例,展示了如何接收标准化的 JSON 数据。这些内容对开发者在实际应用中具有较高的指导价值。

微软 AI Agent三剑客:AutoGen、Semantic Kernel与MEAI的协同演进#

https://www.cnblogs.com/sheng-jie/p/18924852

微软构建了一个分层AI开发平台,包含AutoGen、Semantic Kernel(SK)和Microsoft.Extensions.AI(MEAI)。MEAI在.NET生态中提供基础AI抽象,简化与AI服务的整合。SK作为AI应用的核心编排框架,支持生产环境的智能应用,整合AutoGen的研究成果。AutoGen则用于多智能体协作的前沿研究,提供灵活的原型设计环境。三者通过成熟功能迁移和能力整合成为统一的AI工具,助力.NET开发者构建智能应用。

Maui 实践:为控件动态扩展 DragDrop 能力#

https://www.cnblogs.com/zhally/p/18922066

本文探讨了拖放功能的实现,强调了DragGestureRecognizer和DropGestureRecognizer的配合及其复杂性。作者创建了一个扩展方法,简化了拖放配置,并通过核心构件如DragDropPayload和DragDropMessage实现了控件与业务逻辑的解耦。这些设计使得用户可专注于业务逻辑而非技术细节。核心组件提供类型安全,数据透传和业务解耦等功能,提高了代码的可读性和可维护性。整体架构合理且实用,内容适合C# .NET开发者了解更深层次的拖放机制。

Select 组件实现【全选】(基于 Element)#

https://www.cnblogs.com/hnzhengfy/p/18925817/element_select_all

本文介绍了在 Element 的 Select 组件中实现全选功能的方法。由于 Select 组件默认不支持全选属性,作者提供了添加 Checkbox 的解决方案。当所有选项被选中时,Checkbox 自动勾选,取消选择时则自动取消勾选。通过监测选中项的数量与备选列表长度,动态更新 Checkbox 状态。示例中包含前端实现代码和 JavaScript 逻辑,清晰展示了如何管理多选操作。此实现增强了用户体验。

开源提示词优化神器来了!一键优化Function Calling和MCP提示词,让你的AI应用性能飞跃#

https://www.cnblogs.com/token-ai/p/18920899

该文章介绍了一个开源的提示词优化平台Auto-Prompt,旨在解决Function Calling和MCP提示词调用不准确的问题。文中首先说明了为何需要专业的提示词优化,并列举了一些常见的场景。接着,文章详细阐述了平台的核心功能,包括智能识别API参数、优化上下文理解及错误处理逻辑等。同时,文章解析了Function Calling的优化原理及其多项优势,并指出MCP提示词的标准化需求。最后,提供了在线体验和本地部署的指导,强调了开源和社区驱动的特点。

理解堆排序的本质:建堆 + 交换 + 装箱+重复#

https://www.cnblogs.com/morec/p/18921958

堆排序是一种基于堆结构的选择排序,适用于不允许额外空间的场景,性能为 O(n log n)。其核心步骤包括构建最大堆,将堆顶元素与堆尾元素交换,去掉已排序元素,然后重复调整堆,直到只剩一个元素为止。文章提供了 C# 和 Go 的实现代码,详细注释其实现过程,便于读者理解。示例通过步骤演示了从初始数组到排序完成的过程,展示了数据的变化。

WinForm中实现Adobe PDF Reader实现旋转PDF功能#

https://www.cnblogs.com/wofeiliangren/p/18923487

本文探讨了在Adobe PDF Reader中实现PDF旋转的方法。由于Adobe PDF Reader缺乏直接的旋转功能,作者建议通过引入PdfiumViewer库来旋转PDF并保存文件。具体方法包括创建临时文件,使用内存流操作加载PDF文档,并对每一页进行旋转。该方法有效解决了文件锁定问题,提供了实用的代码示例,便于开发者理解和运用。

VKProxy已提供命令行工具,镜像和简单的ui#

https://www.cnblogs.com/fs7744/p/18928323

VKProxy是使用C#开发的基于Kestrel的L4/L7代理。经过六个月的开发,它已具备基本功能。文档中包括安装和使用指南,支持通过UI配置和JSON文件配置。提供dotnet工具命令行支持,当前兼容net9.0。使用者可通过命令vkproxy -h获取参数信息,并能自定义JSON格式的配置文件,配置路由、负载均衡和健康检查等。此项目适合对代理技术感兴趣的开发者。

一个基于 .NET 开源、模块化 AI 图像生成 Web 用户界面#

https://www.cnblogs.com/Can-daydayup/p/18929376

SwarmUI是基于.NET的开源模块化AI图像生成Web用户界面,旨在提供易用和高性能的工具。该项目支持各种AI图像及视频模型,兼容Windows、Linux和Mac。用户需现代GPU以保证性能。项目源代码与安装指导可在GitHub上找到,鼓励用户关注和支持开源项目。SwarmUI已被收录为C#/.NET领域的优秀项目,以帮助开发者获取最新动态和最佳实践。

AppBox拖拽设计增删改查用户界面#

https://www.cnblogs.com/BaiCai/p/18926606

本文介绍了大屏设计中用户界面的动态生成方法,包括准备数据结构、详情视图和列表视图的布局与操作步骤。作者提供了创建数据状态、绑定表单及按钮事件的方法,并提到待实现的权限验证和动态化组件。同时表达了对Bug的容忍与对协作的欢迎。这篇文章为开发者提供了具体的操作指导,是一个实用的技术分享。

.net 实现 CQRS 的一个设想#

https://www.cnblogs.com/xiangji/p/18923431

本文讨论了使用CQRS和DDD框架在项目开发中遇到的问题,包括数据库负载和数据不一致。提到使用开源框架和ShadowSql简化数据同步,通过MQ将事件包装以支持其他系统的数据需求。该方法可能会提高数据一致性。作者提出了改进方案,借助IExecuteSql接口来同步数据库,认为可以解决大部分数据不一致的问题。最后,尽管ShadowSql尚不支持ES和Hive,但该设想具有潜力。

本周国际周刊未更新

C# .NET 交流群#

相信大家在开发中经常会遇到一些性能问题,苦于没有有效的工具去发现性能瓶颈,或者是发现瓶颈以后不知道该如何优化。之前一直有读者朋友询问有没有技术交流群,但是由于各种原因一直都没创建,现在很高兴的在这里宣布,我创建了一个专门交流.NET性能优化经验的群组,主题包括但不限于:

  • 如何找到.NET性能瓶颈,如使用APM、dotnet tools等工具
  • .NET框架底层原理的实现,如垃圾回收器、JIT等等
  • 如何编写高性能的.NET代码,哪些地方存在性能陷阱

希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET问题和宝贵的分析优化经验。目前一群已满,现在开放二群。可以加我vx,我拉你进群: ls1075 另外也创建了QQ Group: 687779078,欢迎大家加入。

原创作者: InCerry 转载于: https://www.cnblogs.com/InCerry/p/-/dotnet_week_25_6_3
数据集介绍:电力线目标检测数据集 一、基础信息 数据集名称:电力线目标检测数据集 图片数量: 训练集:2898张图片 验证集:263张图片 测试集:138张图片 总计:3299张图片 分类类别: 类别ID: 0(电力线) 标注格式: YOLO格式,包含对象标注信息,适用于目标检测任务。 数据格式:JPEG/PNG图片,来源于空中拍摄或监控视觉。 二、适用场景 电力设施监控与巡检: 数据集支持目标检测任务,帮助构建能够自动识别和定位电力线的AI模型,用于无人机或固定摄像头巡检,提升电力设施维护效率和安全性。 能源与公用事业管理: 集成至能源管理系统中,提供实时电力线检测功能,辅助进行风险 assessment 和预防性维护,优化能源分配。 计算机视觉算法研究: 支持目标检测技术在特定领域的应用研究,促进AI在能源和公用事业行业的创新与发展。 专业培训与教育: 数据集可用于电力行业培训课程,作为工程师和技术人员学习电力线检测与识别的重要资源。 三、数据集优势 标注精准可靠: 每张图片均经过专业标注,确保电力线对象的定位准确,适用于高精度模型训练。 数据多样性丰富: 包含多种环境下的电力线图片,如空中视角,覆盖不同场景条件,提升模型的泛化能力和鲁棒性。 任务适配性强: 标注格式兼容YOLO等主流深度学习框架,便于快速集成和模型开发,支持目标检测任务的直接应用。 实用价值突出: 专注于电力线检测,为智能电网、自动化巡检和能源设施监控提供关键数据支撑,具有较高的行业应用价值。
【弹簧阻尼器】基于卡尔曼滤波弹簧质量阻尼器系统噪声测量实时状态估计研究(Matlab代码实现)内容概要:本文围绕“基于卡尔曼滤波的弹簧质量阻尼器系统噪声测量与实时状态估计”展开研究,利用Matlab代码实现对系统状态的精确估计。重点在于应用卡尔曼滤波技术处理系统中存在的噪声干扰,提升对弹簧质量阻尼器系统动态行为的实时观测能力。文中详细阐述了系统建模、噪声特性分析及卡尔曼滤波算法的设计与实现过程,展示了滤波算法在抑制测量噪声、提高状态估计精度方面的有效性。同时,该研究属于更广泛的信号处理与状态估计技术应用范畴,适用于复杂动态系统的监控与控制。; 适合人群:具备一定控制系统理论基础和Matlab编程经验的高校研究生、科研人员及工程技术人员,尤其适合从事动态系统建模、状态估计与滤波算法研究的相关人员。; 使用场景及目标:①应用于机械、航空航天、自动化等领域中对振动系统状态的高精度实时估计;②为噪声环境下的传感器数据融合与状态预测提供算法支持;③作为卡尔曼滤波算法在实际物理系统中应用的教学与科研案例。; 阅读建议:建议读者结合Matlab代码实践,深入理解系统建模与滤波器设计的关键步骤,关注噪声建模与滤波参数调优对估计性能的影响,并可进一步拓展至扩展卡尔曼滤波(EKF)或无迹卡尔曼滤波(UKF)在非线性系统中的应用。
【顶级EI复现】计及连锁故障传播路径的电力系统 N-k 多阶段双层优化及故障场景筛选模型(Matlab代码实现)内容概要:本文介绍了一个针对电力系统连锁故障传播路径的N-k多阶段双层优化及故障场景筛选模型,旨在提升电力系统在复杂故障条件下的安全性与稳定性。该模型结合了多阶段动态响应与双层优化架构,能够有效模拟连锁故障的传播过程,并通过优化算法筛选出关键故障场景,进而支撑系统风险评估与预防控制策略制定。文中提供了基于Matlab的代码实现,便于科研人员复现顶级EI刊研究成果,深入理解电力系统可靠性分析的核心算法与建模方法。; 适合人群:具备一定电力系统基础知识和Matlab编程能力的研究生、科研人员及从事电力系统安全分析的工程技术人员,尤其适合致力于高水平论文复现与创新研究的用户。; 使用场景及目标:①复现电力系统连锁故障分析领域的顶级EI论文模型;②开展N-k故障场景筛选、多阶段优化建模、双层规划算法设计等相关课题研究;③提升在电力系统可靠性、韧性评估与预防控制方面的科研能力。; 阅读建议:建议读者结合文档提供的Matlab代码逐模块学习,重点关注双层优化结构与故障传播路径建模的实现细节,同时参考文中提及的YALMIP工具包和网盘资源进行实践调试,以加深对算法逻辑与工程应用的理解。
【单磁铁磁场】【两个相斥磁铁】【两个相吸磁铁】【磁场分布 3d】(Matlab代码实现)内容概要:本文档主要围绕“单磁铁磁场”、“两个相斥磁铁”、“两个相吸磁铁”的磁场分布3D可视化展开,提供了基于Matlab的代码实现方案,用于科研仿真与教学演示。通过建立磁偶极子模型,计算并绘制不同磁铁组合下的三维磁场分布图,帮助理解磁场的空间特性与相互作用机制。文档还提及多个相关科研主题和技术应用场景,涵盖电磁场仿真、电力系统、路径规划、优化算法等领域,体现了Matlab在多学科科研仿真中的广泛应用。重点在于通过编程手段实现磁场的可视化与定量分析,适用于需要电磁场建模与仿真的研究工作。; 适合人群:具备一定Matlab编程基础的高校学生、科研人员及工程技术人员,尤其适用于从事电磁场仿真、电力系统、自动化控制等相关领域的研究人员;工作年限1-5年内的研究生或工程师尤为适合。; 使用场景及目标:①用于教学实验中磁场分布的三维可视化展示;②支持科研项目中对磁体间相互作用的建模与仿真分析;③为电磁设备设计、磁场传感器布局等工程问题提供仿真依据;④作为学习Matlab在电磁场计算中应用的实践案例。; 阅读建议:建议读者结合文档提供的代码逐行调试运行,理解磁场建模的数学原理与Matlab实现细节,同时可参考文中提到的其他仿真案例进行拓展学习,提升综合仿真能力。注意区分不同磁铁配置下的边界条件设置,确保仿真结果的准确性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值