百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

.NET周刊【9月第5期 2024-09-29】

zhezhongyun 2025-01-23 22:28 78 浏览

国内文章

Windows 调试工具课程

https://www.cnblogs.com/lindexi/p/18421353

本文是关于如何使用Windows调试工具解决软件故障的课程记录,适合初学者。作者介绍了解决软件崩溃的策略,从用户反馈开始,利用事件查看器和任务管理器等工具找出问题根源。事件查看器可以给出软件崩溃的关键日志信息,任务管理器则用于检测进程状况。若上述工具无效,则通过捕获DUMP文件进行深入分析。DUMP文件能够还原进程的内存状态,作者建议使用Visual Studio等工具进行分析。总之,文章详述了从问题发现到解决的完整流程。

.net 到底行不行!2000 人在线的客服系统真实屏录演示(附技术详解)

https://www.cnblogs.com/sheng_chao/p/18431157

作者开发了一个基于.NET的在线客服系统,展示了其高效性能和安全性。系统在低配置服务器上可处理超过16万次HTTPS请求和25万次PV请求,内存占用小于300MB,CPU占用约5%。使用HTTPS和AES加密保障数据安全,并支持私有化部署。技术细节中,作者讨论了通过NetworkStream实现TCP服务器的过程,解决了缓冲处理和数据解析的问题,提高了消息处理的效率。

.Net Web项目中,实现轻量级本地事件总线 框架

https://www.cnblogs.com/kong-ming/p/18422632

事件总线负责系统中事件的发布和订阅,通过松耦合方式提高模块间通信的灵活性和可维护性。实现上,事件总线自动注入到DI容器中,每个事件处理程序也自动注入。通过标注特性,事件总线能自动发现并触发相应处理程序。使用案例展示了如何继承事件模型并注入事件总线服务,通过DI获取事件总线服务来触发事件。事件总线功能开发包括定义服务接口和事件处理器接口,其中通过泛型指定事件模型类型。特性用于标注处理程序,根据消息类型找到并调用相应处理程序,支持多个处理程序顺序执行,错误不影响其他处理程序。

.NET 8 + Vue/UniApp 高性能前后端分离框架

https://www.cnblogs.com/1312mn/p/18418452

本文推荐了一款名为 Admin.NET 的前后端分离框架,该框架采用 .NET5/.NET7/.NET8 结合 SqlSugar ORM 用于后端开发,并使用 Vue2.x/Vue3.x 进行前端开发。此框架支持 RBAC 权限管理、高效的代码生成、自动分表及多数据源,配置简单运行快捷。Admin.NET 提供全面的权限管理和日志记录系统,支持多语种和多数据库,利于提升开发效率和简化操作。项目前端支持多种设备,后端提供丰富的功能模块,适合多种业务场景使用。框架的轻量化设计和强大的可扩展性,使开发者能够更专注于业务逻辑,减少重复工作。

使用.NET并行任务库(TPL)与并行Linq(PLINQ)充分利用多核性能

https://www.cnblogs.com/GuZhenYin/p/18429430

本文记录了如何利用.NET并行任务库(TPL)优化多核CPU性能的问题。作者在项目中面临结算方法执行效率低的问题,发现服务器只有一个核心在工作。通过TPL,改用并行执行,加快了结算速度,从超时变为20秒完成。TPL简化了并行编程,自动处理线程调度和状态管理。示例展示了顺序执行与并行执行的时间对比,性能提升明显,尤其是在多核机器上。文章还提及PLINQ,可在多个处理器上并行执行查询,极大提升数据处理效率。

C#实现信创国产Linux桌面录制成MP4(源码,银河麒麟、统信UOS)

https://www.cnblogs.com/shawshank/p/18427307

文章介绍在国产操作系统上使用跨平台技术进行桌面录制的方法。通过.NET Core和相关组件实现了图像采集、视频编码,并生成mp4文件。具体步骤包括创建并启动图像采集器和录制器,将数据传入录制器编码生成文件,并在银河麒麟或统信UOS系统上运行。相关代码展示了如何实现这些功能,并提供源码下载以便进一步研究。

2024 年 C# 高效开发:精选实用类库

https://www.cnblogs.com/1312mn/p/18419381

文章介绍了多种受欢迎的C#类库,包括Entity Framework Core、Newtonsoft.Json、AutoMapper、HttpClient、Serilog、Hangfire、xUnit和OxyPlot。每个类库的功能、优点和缺点都被详细分析。Entity Framework Core提供强大的对象关系映射功能,支持多数据库系统和LINQ查询。Newtonsoft.Json擅长JSON数据操作。AutoMapper简化对象映射。HttpClient用于发送和接收HTTP请求。Serilog灵活记录日志信息。Hangfire处理后台任务。xUnit用于单元测试,OxyPlot进行数据可视化。各类库在性能、实用性和配置复杂性方面有不同的特点。

.NEET跨平台绘图基础库--SkiaSharp

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

SkiaSharp 是 .NET 平台的跨平台 2D 图形 API,基于 Google 的 Skia 图形库。它可用于移动、服务器和桌面平台,包括 ASP.NET Core、WPF 等。最初为 Google Android 和 Chrome 提供图形引擎,现在支持 Blazor WebAssembly,实现网页画布绘图。结合 Microsoft.Maui.Graphics,SkiaSharp 为 MAUI 提供一致的跨平台图形渲染。AvaloniaUI 使用 SkiaSharp 增强渲染性能,而 Uno 平台通过 SkXamlCanvas 集成 SkiaSharp。它适用于广泛应用场景,如绘图工具、报表制作、图像生成和游戏开发,但网页绘图支持有限。在高性能图形渲染上表现出色,尽管在移动设备上需优化。

WaterCloud:一套基于.NET 8.0 + LayUI的快速开发框架,完全开源免费!

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

WaterCloud是一款基于.NET 8.0和LayUI的开源快速开发框架,旨在提高开发效率,支持多种商业应用开发。技术上使用ASP.NET MVC、API和SqlSugar,实现灵活的RBAC权限控制和多租户功能。前端以LayUI为主,集成了诸如文件管理、流程设计和响应式设计,支持多种设备。框架包含代码生成器和丰富的工具类,降低学习成本,为开发者提供了一套完整的解决方案。

C# 开源浏览器性能提升,体验Chrome级速度

https://www.cnblogs.com/1312mn/p/18420917

SharpBrowser 是使用 C# 和 CefSharp 开发的快速开源浏览器,基于.NET 6。采用轻量级 CEF 渲染器,速度甚至超越 Chrome。支持HTML5、CSS3、JavaScript、WebAssembly等技术,具备多标签浏览、智能地址栏、导航控制和开发者工具等功能。个性化强,可定制错误页面和上下文菜单。依赖 VC++ 2019 运行时和 CefSharp 必需版本。项目灵活、性能卓越,希望对开发者有帮助。

GZY.Quartz.MUI(基于Quartz的UI可视化操作组件) 2.7.0发布 新增各项优化与BUG修复

https://www.cnblogs.com/GuZhenYin/p/18426388

该项目更新至2.7.0版本,增加了API任务超时时间设置,可全局配置或单独设置。日志查看默认按开始时间倒序排列,新增控制台日志显示配置。UI方面,固定了操作栏和表头,并添加了HTML标签支持。此外,修复了API任务无参数报错问题。项目轻量,支持多种.NET宿主项目,可选HTTP定时调用和DLL反射调用本地方法。代码示例提供了如何配置这些功能。

CodeMaid:一款基于.NET开发的Visual Studio代码简化和整理实用插件

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

文章介绍了CodeMaid插件,它是一款.NET开源免费工具,旨在简化和格式化Visual Studio中的代码。CodeMaid支持多种编程语言,提供代码清理、注释格式化、行排序等功能,提高代码可读性和开发效率。用户可以通过Visual Studio插件市场下载安装,该插件已被收录在C#/.NET/.NET Core优秀项目中,并开源在GitHub和Gitee上。

.NET 工具库高效生成 PDF 文档

https://www.cnblogs.com/1312mn/p/18429834

QuestPDF 是一个开源 .NET 库,可通过简洁的 C# Fluent API 生成 PDF 文档。它支持跨平台运行,不依赖外部库,能够快速处理大型复杂文档。该库提供强大的调试工具,以及文本、图像等多种元素支持。通过 QuestPDF,可以轻松创建和定制复杂的 PDF 文档,例如报告和发票。用户无需复杂设置即可上手,便于在 WebAPI 项目中生成 PDF 文件。官方文档提供了丰富的示例和详细教程,帮助用户快速掌握其功能。

使用MessagePipe实现进程间通信

https://www.cnblogs.com/sesametech-dotnet/p/18436641

MessagePipe是一种用于.NET和Unity的高性能消息传递管道,支持多种模式和通信方式。相比标准C#事件,其效率更高。通过Prism框架搭建的两个WPF项目演示了MessagePipe在分布式发布/订阅中的应用。Publish项目负责发送消息,Subscribe项目接收消息,均通过依赖注入实现。代码中展示了通过构造函数注入和RelayCommand发送与接收消息的过程。

C#/.NET/.NET Core技术前沿周刊 | 第 6 期(2024年9.16-9.22)

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

该文章汇总了C#/.NET/.NET Core技术的最新发展动态,包括项目架构模式、.NET智能组件、GitHub Copilot改进、.NET 9候选版本及其框架更新、ASP.NET Core 9 RC 1的重要功能更新,以及一系列实用开源项目和技术点,如异步套接字库、ORM框架、防撤回补丁等。目的是帮助开发者站在技术前沿,涵盖了广泛的开发需求,并提供了丰富的学习资源。

用C#写个PDF批量合并工具简化日常工作

https://www.cnblogs.com/kacarton/p/18426625

为了满足项目需求,简化PDF文档的处理,开发了一款基于开源项目PdfBinder1.2的工具。该工具能够快速合并多份PDF、选取或拆分指定页码、设置书签作为导航、统一页面尺寸,并支持文件拖放操作。它通过C#编写并使用WinForms实现文件添加、分组以及界面更新功能。程序检查PDF有效性,并记录总页数与提取范围。用户可在界面中批量添加PDF,通过拖放实现文件管理,定义分组书签来管理PDF文件。该工具旨在简化操作,提高PDF文档处理效率。

2款.NET开源且免费的Git可视化管理工具

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

Git是一种分布式版本控制系统,用于记录修改历史和支持多人协作,由Linus Torvalds创建。Git以其高效、灵活、稳定成为软件开发中最流行的工具。它使用“仓库”来保存代码和历史,支持本地仓库的同步。Git具有强大的分支和合并功能。Git Extensions是一个用于管理Git存储库的.NET开源工具,能与Windows和Visual Studio集成。SourceGit是另一款.NET开源、跨平台的Git管理工具。这些工具已被收录到C#/.NET优秀项目精选中,帮助开发者提高效率。

Serilog文档翻译系列(五) - 编写日志事件

https://www.cnblogs.com/hugogoos/p/18430233

文章详细介绍了如何在 Serilog 中使用日志事件,包括日志级别、消息模板、动态级别调整及其语法规范。强调日志事件的重要性和如何通过属性名称提高可读性。Serilog 使用 C# 格式字符串的超集,属性用大括号括住,支持运算符和格式后缀。日志级别从详细到致命逐次递增,信息级别是分析事件流的关键。并说明在分布式应用中可动态调整日志级别。同时,介绍如何通过 ForContext 添加源上下文和标识符以增强日志事件的关联性。

.NET 跨平台工业物联网网关解决方案

https://www.cnblogs.com/1312mn/p/18426035

本文介绍了基于.NET 6开发的工业物联网网关解决方案,它像智能交通警察,连接本地设备与云端系统。该解决方案支持跨平台部署,提供直观的可视化配置界面,可连接多种设备实现双向数据通信。支持边缘计算,为数据处理提供支持。内置Mqtt和OPCUA服务,可轻松与MES、SCADA交互数据。开源项目可在各种硬件上运行并针对特定硬件优化。提供在线体验,用户可通过配置实现设备数据的高效管理和传输。

.NET 开源高性能 MQTT 类库

https://www.cnblogs.com/1312mn/p/18412658

MQTTnet 是一个用于 .NET 平台的开源 MQTT 客户端和服务器库,广泛应用于物联网设备。它支持 MQTT 3.1.1 至 5.0,适用于多种 .NET 版本如 .NET Framework 和 .NET Core。主要特点包括高性能异步编程、跨平台兼容性、易用 API 和安全的 SSL/TLS 支持。MQTTnet 可实现消息发布与订阅、自动重连和安全认证等功能。其应用场景涵盖物联网、车联网和工业自动化。MQTT 客户端和服务器的开发步骤涉及安装库、配置和消息处理等。

Serilog文档翻译系列(六) - 可用的接收器、增强器、格式化输出

https://www.cnblogs.com/hugogoos/p/18435815

Serilog 使用接收器将日志写入存储,提供多种格式和增强器来丰富日志事件。配置通过 NuGet 添加,如 Serilog.Enrichers.T

相关推荐

Python入门学习记录之一:变量_python怎么用变量

写这个,主要是对自己学习python知识的一个总结,也是加深自己的印象。变量(英文:variable),也叫标识符。在python中,变量的命名规则有以下三点:>变量名只能包含字母、数字和下划线...

python变量命名规则——来自小白的总结

python是一个动态编译类编程语言,所以程序在运行前不需要如C语言的先行编译动作,因此也只有在程序运行过程中才能发现程序的问题。基于此,python的变量就有一定的命名规范。python作为当前热门...

Python入门学习教程:第 2 章 变量与数据类型

2.1什么是变量?在编程中,变量就像一个存放数据的容器,它可以存储各种信息,并且这些信息可以被读取和修改。想象一下,变量就如同我们生活中的盒子,你可以把东西放进去,也可以随时拿出来看看,甚至可以换成...

绘制学术论文中的“三线表”具体指导

在科研过程中,大家用到最多的可能就是“三线表”。“三线表”,一般主要由三条横线构成,当然在变量名栏里也可以拆分单元格,出现更多的线。更重要的是,“三线表”也是一种数据记录规范,以“三线表”形式记录的数...

Python基础语法知识--变量和数据类型

学习Python中的变量和数据类型至关重要,因为它们构成了Python编程的基石。以下是帮助您了解Python中的变量和数据类型的分步指南:1.变量:变量在Python中用于存储数据值。它们充...

一文搞懂 Python 中的所有标点符号

反引号`无任何作用。传说Python3中它被移除是因为和单引号字符'太相似。波浪号~(按位取反符号)~被称为取反或补码运算符。它放在我们想要取反的对象前面。如果放在一个整数n...

Python变量类型和运算符_python中变量的含义

别再被小名词坑哭了:Python新手常犯的那些隐蔽错误,我用同事的真实bug拆给你看我记得有一次和同事张姐一起追查一个看似随机崩溃的脚本,最后发现罪魁祸首竟然是她把变量命名成了list。说实话...

从零开始:深入剖析 Spring Boot3 中配置文件的加载顺序

在当今的互联网软件开发领域,SpringBoot无疑是最为热门和广泛应用的框架之一。它以其强大的功能、便捷的开发体验,极大地提升了开发效率,成为众多开发者构建Web应用程序的首选。而在Spr...

Python中下划线 ‘_’ 的用法,你知道几种

Python中下划线()是一个有特殊含义和用途的符号,它可以用来表示以下几种情况:1在解释器中,下划线(_)表示上一个表达式的值,可以用来进行快速计算或测试。例如:>>>2+...

解锁Shell编程:变量_shell $变量

引言:开启Shell编程大门Shell作为用户与Linux内核之间的桥梁,为我们提供了强大的命令行交互方式。它不仅能执行简单的文件操作、进程管理,还能通过编写脚本实现复杂的自动化任务。无论是...

一文学会Python的变量命名规则!_python的变量命名有哪些要求

目录1.变量的命名原则3.内置函数尽量不要做变量4.删除变量和垃圾回收机制5.结语1.变量的命名原则①由英文字母、_(下划线)、或中文开头②变量名称只能由英文字母、数字、下画线或中文字所组成。③英文字...

更可靠的Rust-语法篇-区分语句/表达式,略览if/loop/while/for

src/main.rs://函数定义fnadd(a:i32,b:i32)->i32{a+b//末尾表达式}fnmain(){leta:i3...

C++第五课:变量的命名规则_c++中变量的命名规则

变量的命名不是想怎么起就怎么起的,而是有一套固定的规则的。具体规则:1.名字要合法:变量名必须是由字母、数字或下划线组成。例如:a,a1,a_1。2.开头不能是数字。例如:可以a1,但不能起1a。3....

Rust编程-核心篇-不安全编程_rust安全性

Unsafe的必要性Rust的所有权系统和类型系统为我们提供了强大的安全保障,但在某些情况下,我们需要突破这些限制来:与C代码交互实现底层系统编程优化性能关键代码实现某些编译器无法验证的安全操作Rus...

探秘 Python 内存管理:背后的神奇机制

在编程的世界里,内存管理就如同幕后的精密操控者,确保程序的高效运行。Python作为一种广泛使用的编程语言,其内存管理机制既巧妙又复杂,为开发者们提供了便利的同时,也展现了强大的底层控制能力。一、P...