国内文章

低成本高可用方案!Linux系统下SQL Server数据库镜像配置全流程详解

https://www.cnblogs.com/lyhabc/p/18660810/linux-sql-server-database-mirroring-configuration-guide

本文详细介绍了如何在Linux系统下配置SQL Server数据库镜像,以实现低成本高可用方案。作者首先明确客户的需求,并指出在SQL Server 2017及之后版本中支持Linux系统的同时,镜像技术在高可用性要求不高的情况下是个不错的选择。文章提供了具体的搭建步骤,包括环境要求、主机配置及证书创建等,强调了搭建过程的简便和类似于Windows的特性。该方案适合要求不高的生产环境。

Phi小模型开发教程:用C#开发本地部署AI聊天工具,只需CPU,不需要GPU,3G内存就可以运行,不输GPT-3.5

https://www.cnblogs.com/chingho/p/18681020

本文讨论了AI应用的趋势,强调程序员学习AI技能的重要性,尤其是Phi小模型。Phi模型是微软推出的语言开源模型,最新版本Phi-4在多个基准测试中表现优异。文章提供了C#开发调用此模型的示例,介绍了ONNX的使用和依赖库的安装,以及如何创建控制台应用。作者分享了具体代码示例,以帮助读者理解如何应用这一技术。

C#使用yield关键字提升迭代性能与效率

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

这篇文章详细介绍了C#中的yield关键字。yield简化了数据迭代,实现按需生成数据。文章通过对比传统迭代和yield迭代,展示了yield如何提高性能和效率。使用yield时,数据在需要时才生成,优化了内存使用。文章提供了代码示例,展示了yield关键字的应用和效果。还讨论了yield break的用法,表明如何显式地结束迭代。同时,指出了yield关键字的限制。总体而言,文章内容丰富,易于理解,对C#开发者有实用价值。

回顾我的软件开发经历(1)

https://www.cnblogs.com/Rong-/p/18685820

这篇文章讲述了作者的职业生涯,从大学毕业后的第一份工作开始,逐步深入软件开发的各个方面。作者回顾了从搭建BBS论坛到开发综合钻井平台的经历,强调了在工作中学习ASP、C#和面向对象编程的重要性。同时,作者分享了对单元测试和代码生成器的理解与实践,说明了敏捷开发对团队的影响。书籍如《程序员修炼之道》和《.NET框架设计》也对作者的发展产生了重要影响。这些经历帮助作者在软件开发领域不断成长和深化理解。文章内容丰富,体现了个人成长与技术深度的结合。

C# WebAPI 插件热插拔

https://www.cnblogs.com/BFMC/p/18687474

WebAPI插件热插拔使应用程序无需重启即可动态加载、更新或卸载功能模块。这种设计适用于需要频繁更新的大型系统,增加了系统的稳定性和灵活性。文章展示了如何使用Postman进行查询、添加、更新、删除插件功能,以及相关代码实现,包括接口定义和数据库连接配置。主要依赖NuGet程序包如Newtonsoft.Json和SqlSugarCore,以实现数据转换和存储功能。

拥有自己的解析器(C#实现LALR(1)语法解析器和miniDFA词法分析器的生成器)

https://www.cnblogs.com/bitzhuwei/p/18683262/my-own-parsers

文章介绍了一款C#实现的解析器生成器bitParser,支持LALR(1)语法解析和miniDFA词法分析。该生成器参考了lex和yacc输入格式,采用了现代编译原理的算法,实现了多种类型的语法和词法分析器。提供了详尽的注释和状态图,方便学习和调试。生成器无需依赖第三方库,可直接使用类库调用,具备多行和单行注释的自定义功能,并能快速生成解析器代码和文档,优化显著。文章开头和结尾提供了额外的链接以获取更多资源和示例。

.NET 9 new features-C#13新的锁类型和语义

https://www.cnblogs.com/tianqing/p/18653870

C# 13 引入了新的锁类型 System.Threading.Lock,以增强多线程编程中的同步机制。这种新锁替代了传统的 lock 关键字,解决了性能瓶颈和死锁风险。System.Threading.Lock 提供了更高效、安全的线程同步操作,适用于高性能的多线程应用和复杂的同步需求。新语义简化了锁定行为的控制,降低了死锁几率。示例代码展示了如何安全更新共享资源,演示了使用新的锁的有效性和实用性。

.NET9 AOT部署

https://www.cnblogs.com/hudean/p/18685670

AOT(Ahead-of-Time)是将C#程序提前编译为机器代码的方法,能提高应用的启动速度和减少内存占用。AOT适合在未安装.NET运行时的环境中运行。与JIT(Just-in-Time)相比,AOT有更快的启动速度和更低的内存占用,但编译时间较长且缺乏灵活性。选择AOT或JIT取决于应用场景、性能需求和开发周期。通过创建控制台项目,可以实践AOT和JIT的不同应用。

回顾我的软件开发经历:我与代码生成器的涅槃之路

https://www.cnblogs.com/Rong-/p/18682641

这篇文章讲述了作者从简单的代码生成器发展到强大的ORM框架的过程。通过学习与实践,作者逐渐掌握了重构、设计模式和系统架构的重要性。初次接触代码生成器时,作者对面向对象开发尚感模糊,后期通过阅读《C# Primer Plus》不断完善代码生成器。经过多次重构,作者实现了支持多种数据库的ORM框架,并在开发过程中逐渐理解设计模式的应用。作者还探讨了前端控件、输入验证和模板技术等方面,让框架更加高效和灵活。最终,作者反思了框架与库的关系,认为可以拆分为多个独立库以实现最佳效果。

【译】我们最喜欢的2024年的 Visual Studio 新功能

https://www.cnblogs.com/MeteorSeed/p/18687409

Visual Studio 团队在2024年推出了多项新功能以提升开发者的生产力。图像悬停预览功能优化了引用图像的查看,错误复制改进让用户可以仅复制所需的错误信息。新增加的重命名建议功能针对不明确的变量命名,以帮助开发者进行合理命名。内存布局查看器和异步调试器分别优化了内存使用和调试流程。同时,.NET MAUI 模板更新和 Copilot 功能增强了项目启动和代码建议的效率。新扩展管理器简化了扩展安装过程,而整合虚幻引擎则为游戏开发提供了便利。这些创新皆源于开发者社区的反馈。

记一次 .NET某数字化协同管理系统 内存暴涨分析

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

这篇文章讨论了在Linux上运行.NET程序时出现的内存泄露问题。作者分享了一位朋友在高级调试训练营中遇到的情况,并解释了如何使用sos提供的!maddress命令来分析内存使用情况。文章详细描述了内存暴涨的原因,并通过具体示例展示了内存的分布情况。尽管主要针对技术调试人员,内容清晰且实用。

Phi小模型开发教程:C#使用本地模型Phi视觉模型分析图像,实现图片分类、搜索等功能

https://www.cnblogs.com/chingho/p/18691002

这篇文章介绍了如何利用AI模型进行非结构化数据的处理。主要讲述了Phi-vision模型的下载、设置和使用,尤其是在.NET 9环境下。作者提供了详细的步骤,包括下载ONNX模型、创建控制台应用及相应的代码示例。通过该模型,可以实现图像的分类和搜索。文章内容简洁明了,适合有一定编程基础的读者,但对初学者可能稍显复杂。

.NET Core GC压缩(compact_phase)底层原理浅谈

https://www.cnblogs.com/lmy5215006/p/18676634

文章详细描述了垃圾回收(GC)的清除和压缩步骤。首先,GC通过清除不可到达的对象,释放内存。接着,通过创建空闲列表和更新相关结构,来管理碎片。文章随后阐述了压缩阶段,包括对象移动和地址更新。这一过程复杂,涉及多个根的扫描和更新。提供了代码示例来演示GC的工作机制,明确展示了GC前后的对象地址变化。整体上,文章内容丰富,结合了理论和实践。

.NET 中 Logger 常被忽视的方法 BeginScope

https://www.cnblogs.com/chenyishi/p/18682492

BeginScope 方法是 .NET ILogger 接口的一部分,用于创建日志记录的作用域,提升日志可读性和调试效率。必须在日志配置中启用作用域信息,如在 appsettings.json 中设置 IncludeScopes 为 true。代码中使用 BeginScope 添加上下文信息,并在日志中包含该信息。此外,可以通过实现 ILogger 接口,将作用域信息以 JSON 格式输出,有助于结构化日志记录,提高系统可维护性。

.NET Core 中如何构建一个弹性的 HTTP 请求机制?

https://www.cnblogs.com/liyongqiang-cc/p/18683913

文章介绍了弹性 HTTP 请求机制的概念及其重要性,强调在分布式系统中应对故障的能力。通过重试、断路器、超时、降级和负载均衡等策略,提升系统的可用性、用户体验和降低运维成本。接着,文章讲解了 .NET Core 中 HttpClient 的使用,并介绍了 HttpClientFactory 的引入,以解决直接使用 HttpClient 时可能面临的问题,包括 DNS 更新和套接字耗尽。

菜单权限的设计与实现

https://www.cnblogs.com/cyzf/p/18683001

本文介绍OverallAuth2.0权限与可视化流程管理系统的设计与实现。通过详细讲解菜单权限的管理,文章强调用户、角色与菜单之间的关系。从角色到菜单的权限分配,涉及数据表设计和接口实现,支持不同公司和系统的权限管理。文章建议读者先阅读系列前文以便理解。可供新手与老手学习,内容清晰且详细。

Winform-耗时操作导致界面渲染滞后

https://www.cnblogs.com/snowoct/p/18690950

文章讨论了Winform的线程机制,强调单线程模型与依赖消息循环的特性。主线程管理所有UI操作,耗时任务会阻塞UI线程,导致控件绘制滞后。通过示例代码说明,pictureBox1的显示受事件处理的影响。最佳解决方案是将耗时任务移至后台线程,以保持UI线程空闲,使用Task.Run或async/await可优化性能。并且强调了主线程必须通过控制.invoke等方法更新UI控件,确保多线程的安全性。

ASP.NET Core 快速轻量级的浏览器检测和设备检测库

https://www.cnblogs.com/netcore5/p/18687375

在 .NET Framework 4.7 中,HttpContext.Request 的 Browser 属性提供了浏览器信息,ASP.NET Core 则通过 BrowserDetector NuGet 包实现浏览器、设备类型和操作系统的检测。支持 .NET 6/7/8。使用方法包括安装 NuGet 包并调用 AddBrowserDetection 方法启用服务。IBrowserDetector 可用于控制器、视图和中间件,以获取浏览器相关信息并执行相应逻辑。

.Net类型 值类型

https://www.cnblogs.com/AntToolStuido/p/18683124

本文介绍了C#中的预定义类型和基本数据类型,包括整型、浮点型、decimal、布尔型和字符型。整型包括sByte、short、int、long、byte、ushort、uint和ulong,各种类型具有不同的范围。浮点型包含float和double,分别支持32位和64位精度,而decimal类型则用于高精度货币计算。bool类型用于表示真或假。char类型用于存储单个字符,并支持多种表示方式。C#使用这些类型提供高效的数据处理。

语音处理 开源项目 EchoSharp

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

EchoSharp 是一个开源项目,旨在实现近实时音频处理,集成多个 AI 模型,支持语音转文本和语音活动检测。该项目采用灵活的架构,目标是简化模型部署和提升性能。它具有实时音频处理和模块化AI组件等特点,为开发人员提供定制功能。项目还整合了多种先进的语音识别技术,适用于高质量音频分析。预计未来会不断发展,拓展更多功能,成为 .NET 生态中的轻量级语音处理工具。

.Net类型 引用类型

https://www.cnblogs.com/AntToolStuido/p/18687112

本文介绍了C#中的两种预定义引用类型:object和string。object是所有类型的根类型,支持装箱和反射,包含基本方法如Equals和ToString。用户需重写这些方法以提供自定义实现。string类型用于处理Unicode字符串,虽然表现为值类型,但实际上是引用类型,存储于堆中。修改字符串将创建新对象,因此字符串不可改变。总体上,文章内容清晰详细,适合对C#感兴趣的读者。

并发编程 - 线程同步(一)

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

本文讨论了线程同步的概念及其重要性。线程同步确保多线程环境中共享资源的安全使用,避免竞争条件导致的数据不一致。如文中银行账户转账的例子,未同步的线程可能造成错误的余额更新。作者还提到torn read现象,显示了多线程带来的共享资源问题。通过共享变量的代码示例,文中反映了线程同步的必要性和实际应用。总体而言,本文对线程同步进行了深入浅出的阐述,适合多线程编程学习者。

ef 值转换与值比较器

https://www.cnblogs.com/aoximin/p/18579017

本文介绍了C#中的值转换器和值比较器的概念与应用。通过实例说明如何将枚举值存储为字符串,方便数据处理。作者详细描述了如何配置模型,将自定义转换器与数据库映射结合,提升了数据存取效率。此外,文章提到值比较器的功能,通过优化更新语句以提高运行效率。这些知识对开发者在实际业务逻辑中处理数据具有参考价值。

应用程序取得当前目录和退出

https://www.cnblogs.com/assassinx/p/18691774

该文章探讨了在C#中获取当前应用程序目录和退出的方法。作者提到多种获取路径的方式,如Assembly和Process类。通过示例代码,读者可以学习如何使用System.Reflection和System.AppDomain获取exe文件路径,以及Process类中的方法。文章还讲解了关于应用程序集、进程和应用程序对象的概念,强调了它们之间的关系。尽管信息丰富,但结构稍显松散,概念也有点重复。

主题

Uno 平台 5.6 - 2.5 倍的性能改进、涡轮增压的热重载和扩展的应用程序打包

https://platform.uno/blog/5-6/

发布 4.3.0 · Shouldly/Shouldly

https://github.com/shouldly/shouldly/releases/tag/4.3.0

发布 7.0.0 · Cysharp/MagicOnion

https://github.com/Cysharp/MagicOnion/releases/tag/7.0.0

发布 [预发布] v8.2.250129-preview2 · 社区工具包/Windows

https://github.com/CommunityToolkit/Windows/releases/tag/v8.2.250129-preview2

文章、幻灯片等

C# 定式 - MessageBox - 居中父屏并隐藏 X 按钮 - Qiita

https://qiita.com/chai0917/items/99cc68c9d1ab2fa22b86

用 C# 编写 .NET 垃圾回收器 - 第 1 部分

https://minidump.net/2025-28-01-writing-a-net-gc-in-c-part-1/

自定义折叠文本指示器 - Visual Studio Blog

https://devblogs.microsoft.com/visualstudio/customizing-collapsed-text-indicators/

如何在 .NET 8 构建时不在输出路径中包含平台

https://zenn.dev/dio0550/articles/e19b8a1c0dc2a5

将 GenericHost 放入 WPF 中,方便使用最新功能的最小集成方法 - Qiita

https://qiita.com/spc_ksudoh/items/622e7c58beedb310b64f

“Parsable” 似乎比 “Parseable” 更合适 -.NET 类型名称在正式发布前更改- - Qiita

https://qiita.com/RyotaMurohoshi/items/9033e13303ed449f4c4e

在 Blazor 中实现服务器发送事件 - Qiita

https://qiita.com/k-yamamoto/items/da92203669bbc7742790

使用 GitHub Copilot Edits(预览版)更高效地迭代多个文件 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/iterate-across-multiple-files-more-efficiently-with-github-copilot-edits-preview/

在分析器和源生成器中支持多个 .NET SDK 版本

https://andrewlock.net/supporting-multiple-sdk-versions-in-analyzers-and-source-generators/

Shift_JIS 和 CP932 - Qiita

https://qiita.com/chai0917/items/17708cc4d7f3be46430e

C# AWS ALB⇔Lambda 模拟测试工具在本地环境中调试

https://zenn.dev/ktnd111/articles/141c31ec2a7238

将 Svelte 嵌入到 ASP.NET Core 项目中(没有 SvelteKit)

https://zenn.dev/zead/articles/svelte-aspnetcore

C# IncrementalGenerator(SourceGenerator) 的入门使用

https://zenn.dev/cadcad_sat/articles/b0645a4c8c19a9

C# - XML - CDATA 部分

https://zenn.dev/chai0917/articles/b1cb826ee4e672

我将我的图片查看器从 WPF 重写为 Avalonia

https://www.reddit.com/r/csharp/comments/1idlern/i_rewrote_my_picture_viewer_from_wpf_to_avalonia/

C# 用户的 PowerShell 备忘单 - Qiita

https://qiita.com/yamarah/items/867697f2cd1b30a43eee

使用 Blazor Server 托管 React

https://dev.to/ruxozheng/host-react-with-blazor-server-6ff

使用 MySQL、Entity Framework 和 ASP.NET Core 以及 .NET Aspire 依赖项创建迁移

https://zenn.dev/kei_lr/articles/dc80c29c8c7181

当你因为无法使用 FluentTextField 而放弃使用 Fluent UI Blazor 的时该怎么办

https://zenn.dev/microsoft/articles/fluentuiblazor-workaround

避免搜索字典两次 - Qiita

https://qiita.com/h084/items/3573d4a680fd56eadcfa

使用 Visual Studio 性能探查器 “Memory Usage” 调查内存泄漏 - Qiita

https://qiita.com/pea1205/items/3943e9e76dc90374c25f

使用 StackExchange.Redis 跟踪 Redis 故障转移

https://tech.guitarrapc.com/entry/2025/01/25/235900

.NET周刊【1月第4期 2025-01-26】的更多相关文章

  1. .NET周报【10月第3期 2022-10-25】

    国内文章 聊一聊被 .NET程序员 遗忘的 COM 组件 https://www.cnblogs.com/huangxincheng/p/16799234.html 将Windows编程中经典的COM ...

  2. .NET周报【10月第1期 2022-10-11】

    本周精选 继C#实现await/async无栈协程几年后,davidwrighton实现了.NET绿色线程(有栈协程)的原型 https://github.com/dotnet/runtimelab/ ...

  3. .NET周报【10月第2期 2022-10-17】

    主题 宣布 .NET 7 发布候选版本 2 - .NET Blog https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-2/ .N ...

  4. .NET周报【11月第1期 2022-11-07】

    国内文章 开源·安全·赋能 - .NET Conf China 2022 https://mp.weixin.qq.com/s/_tYpfPeQgyEGsnR4vVLzHg .NET Conf Chi ...

  5. .NET周报【11月第2期 2022-11-15】

    国内文章 统一的开发平台.NET 7正式发布 https://www.cnblogs.com/shanyou/archive/2022/11/09/16871945.html 在 2020 年规划的. ...

  6. .NET周报【11月第3期 2022-11-22】

    国内文章 .NET Conf China 2022 第一批讲师阵容大揭秘!整个期待了! https://mp.weixin.qq.com/s/4p89hhBPw6qv-0OB_T_TOg 目光看过来 ...

  7. .NET周报【11月第4期 2022-11-30】

    国内文章 .NET 7 的 AOT 到底能不能扛反编译? https://www.cnblogs.com/huangxincheng/p/16917197.html 在B站,公众号上发了一篇 AOT ...

  8. .NET周报【12月第1期 2022-12-08】

    国内文章 CAP 7.0 版本发布通告 - 支持延迟消息,性能炸了? https://www.cnblogs.com/savorboard/p/cap-7-0.html) 今天,我们很高兴宣布 CAP ...

  9. .NET周报【12月第2期 2022-12-15】

    国内文章 九哥聊Kestrel网络编程第一章:开发一个Redis服务器 https://mp.weixin.qq.com/s/HJYnBE-7wbvkAYHxQaq3eQ 我和拥有多个.NET 千星开 ...

  10. .NET周报【12月第3期 2022-12-23】

    由于众所周知的原因,大佬们纷纷加入羊群,笔者也未能幸免,体验下来这绝对不是普通感冒的症状,身体不适,熬了几天,所以本周更新比较晚:另外精力有限,对于国际板块只有链接没有简介,十分抱歉! 在这个艰难时刻 ...

随机推荐

  1. Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署

    Maven 多模块项目在eclipse下面热部署,即你可以体验下无论你修改整个项目里面的任何模块的代码,都不需要用maven打包就可以看到效果, 1.首先准备好创建一个maven多项目的代码,准备好一 ...

  2. python之发送邮件(smtplib)

    我们在测试完成后,都会发一份邮件也就是我们的测试报告,那么既然要自动化,是不是也可以通过python帮助我们发送邮件?当然这么强大的python可以帮助你完成这个需求 SMTP SMTP(Simple ...

  3. HarmonyOS Next 入门实战 - 创建项目、主题适配

    ​开发一个简单的demo,其中涉及一些鸿蒙应用开发的知识点,其中涉及导航框架,常用组件,列表懒加载,动画,深色模式适配,关系型数据库等内容,在实践中学习和熟悉鸿蒙应用开发. ​​ ​​ 首先下载并安装 ...

  4. uni-app小程序(快手、抖音)getCurrentPages使用坑位记录

    前情 uni-app是我比较喜欢的跨平台框架,它能开发小程序/H5/APP(安卓/iOS),重要的是对前端开发友好,自带的IDE让开发体验也挺棒的,公司项目就是主推uni-app. 坑位 最近在做一个 ...

  5. Mplus数据分析:性别差异gendergap的相关研究如何做?

    再出一篇用mplus做的多组比较和中介分析的文章,专门谈谈诸如性别差异的各种研究的分析方法,从本文中大家不止可以知道性别差异,各种差异,各种gap只要你感兴趣都可以套进来这个方法来进行你的研究设计. ...

  6. 连续6年夺冠 6项细分领域第一,中电金信持续领跑中国银行业IT解决方案市场

    ​ 7月9日,工信部赛迪顾问发布<2023年度中国银行业IT解决方案市场分析报告>(简称<报告>).中电金信以7.38%的市场份额再度蝉联2023中国银行业IT解决方案市场份额 ...

  7. 使用 MOLECULE 迅速包装百度 UEditor

    UEditor: UEditor - 首页http://ueditor.baidu.com/website/ 我们在对话框上放了几个 UEditor,发现第一次弹出对话框时UEditor还没有初始化 ...

  8. 在app內建web server

    这几年在三家企业都使用 app 內建 web server 的技术方案.效果很好. 该方案顾名思义,就是在 app 中加入一个 embed webserver 组件.组件和app运行于同一进程空间.程 ...

  9. JVM简介—1.Java内存区域

    大纲 1.运行时数据区的介绍 2.运行时数据区各区域的作用 3.各个版本内存区域的变化 4.直接内存的使用和作用 5.站在线程的角度看Java内存区域 6.深入分析堆和栈的区别 7.方法的出入栈和栈上 ...

  10. Qt编写安防视频监控系统53-串口配置

    一.前言 视频监控系统中,除了核心的显示实时视频以外,可能还需要配合串口网络通信之类的,用于通过指令数据收到和硬件交互,比如机器人监控系统中,除了实时显示机器人移动监控画面以外,还通过多个串口和下面的 ...