https://www.cnblogs.com/ncellit/p/17881779.html
本文介绍了如何以清爽的方式开发 dotNet 应用,特别是简单的 API。作者推荐使用.Net6 的 miniapi,提供了官方文档链接,并分享了基于国内实际情况的个人方法。这包括创建一个企业官网 API,涉及数据库操作、授权鉴权、Swagger 文档和文件上传。作者建议引入必要的组件,如 Swashbuckle.AspNetCore 和 SqlSugarCore,并强调根据需求添加组件以避免冗余。还提到了将控制台项目转换为 Web 项目的步骤,并展示了如何在Program.cs
中设置项目,包括上传大小限制、授权鉴权和 Swagger 配置。
https://www.cnblogs.com/Can-daydayup/p/17873700.html
本文介绍了公众号“追逐时光者”定期分享的 C#/.NET/.NET Core 优秀项目和框架,包括项目介绍、功能特点和源码地址。CAP 是一个轻量级的.NET 库,用于处理分布式事务和 EventBus 功能,有助于构建可扩展的微服务系统。ZEQP.WMS 是一个支持多操作系统的仓储管理系统,基于.Net Core 3.1 和 Colder.Admin.AntdVue 框架开发。HandyControl 是一套 WPF 控件库,提供 80 多款自定义控件,易于创建美观的 WPF 应用程序。这些资源有助于开发者提高开发效率和项目质量。
https://www.cnblogs.com/Can-daydayup/p/17884311.html
本文介绍了 DotnetSpider,一个.NET 平台下的轻量级、高性能网络爬虫框架。它支持异步操作,通过内存型消息队列实现组件解耦,可配置为分布式爬虫。文章还指导如何使用 DotnetSpider 爬取博客园文章信息,并保存至文本文件。
https://www.cnblogs.com/shanyou/p/17892164.html
TIOBE 在 2023 年 12 月公布了编程语言排行榜,C#有望成为年度编程语言,因为它在一年内增长了 2.38%,而竞争对手 Fortran 和 F#的增长远低于此。C#与 Java 的差距也在缩小,12 月份仅相差 0.69%。C#的优势在于能高效对接 C 和 C++代码,尤其是在.NET 8 的 NativeAOT 支持下。北京将举办.NET Conf Local Event,主题为“智能 开源 安全”,探讨.NET 在开源领域的发展。会议还将讨论.NET 云原生开发,特别是 Aspire 和 Dapr 的关系及其在云原生开发中的应用。
https://www.cnblogs.com/bossma/p/17889457.html
本文分析了博客园频繁崩溃的原因。博客园近期多次遭遇数据库 CPU 使用率 100%的故障,官方怀疑是参数嗅探问题导致 SQL Server 缓存了低效的执行计划。博客园使用 SQL Server 和存储过程,这在.NET 技术体系中较为常见。尽管 SQL Server 作为商业数据库性能可靠,但在特定参数下可能导致查询效率低下。博客园未能定位具体问题 SQL,导致问题持续存在。有观点认为 SQL Server 性能优于 MySQL,但博客园的问题可能与 SQL Server 本身或阿里云服务有关。
https://www.cnblogs.com/tangyanzhi1111/p/17876898.html
本文讲述了.NET8 中对 AOT(Ahead-of-Time)编译的性能优化。AOT 允许.NET 源码通过 ILC 编译器直接编译成原生二进制代码,无需 JIT(Just-In-Time)编译。优化的重点是减少 AOT 生成的可执行文件大小,例如在.NET8 中,一个 ASP.NET 应用程序的 AOT 文件大小从.NET7 的 13MB 减少到 1.5MB。进一步优化可以通过配置 csproj 文件,如设置优化偏好为体积、启用不变全球化和关闭堆栈跟踪支持,使文件大小进一步减小到 1.2MB。除了体积优化,.NET8 还改进了 AOT 编译器内部和单个库的性能,如 HttpClient,并支持 BenchmarkDotNet 进行性能测试,显示出 AOT 的性能提升。
https://www.cnblogs.com/huangxincheng/p/17874509.html
本文解释了 Windows 内存管理的几个关键术语。Virtual Size 是预定和提交地址的总和,可以通过测试代码和工具对比验证。Working Set 指物理内存条上的内存,包括独占和共享两部分。Private Bytes 是 WS Private 和换页内存的总和,对分析内存泄露有帮助。通过实验代码,作者展示了换页内存的计算和 pagefile.sys 的使用情况。WS Shared 是实际被共享的内存页集合,与 WS Shareable(可共享的内存页集合)不同。
https://www.cnblogs.com/Start201505/p/17892327.html
本文介绍了作者使用.NET 8 开发的 Simple Framework 快速开发框架,以及如何利用该框架创建一个个人网盘项目。框架特点是简化开发流程,支持多数据库,包含基础库和多个扩展库。作者计划通过实战项目教授项目对接、编码、完善和部署。网盘项目旨在实现基本的文件管理功能,支持在线预览编辑,多用户隔离,以及在家部署使用。项目模拟了多个角色的合作,包括项目经理、前端开发、后端开发和运维,并使用了现成的前端页面进行对接。
https://www.cnblogs.com/shanyou/p/17878059.html
.NET 团队于 2023 年 11 月 28 日发布 ML.NET 3.0,强调深度学习和数据处理的重要性,使开发者能在.NET 生态中创建 AI 应用。ML.NET 3.0 通过 CLI 和模型生成器等工具,支持开发者使用 C#和 F#构建和集成自定义 ML 模型。深度学习方面,新增了对象检测、命名实体识别和问答功能,特别提出了 TorchSharp 支持的对象检测 API。数据处理方面,DataFrame 和 IDataView 功能得到增强,改进了数据加载、转换和可视化步骤。未来,开发团队计划发布.NET 9 和 ML.NET 4.0,继续扩展深度学习场景和 DataFrame 集成。更多信息可查看发行说明。
https://www.cnblogs.com/Can-daydayup/p/17880839.html
本文讲述了如何在.NET 后端框架中使用 SQLite-net ORM,并设计班级管理的数据库表。作者首先封装了 SQLiteHelper,然后介绍了班级表和班级学生表的字段设计,包括班级 ID、名称、创建时间以及学生 ID、姓名、年龄、性别等。接着,展示了对应的班级管理模型 SchoolClass 和 Student,并提供了项目源码地址。最后,文章强调了完善后端班级管理接口和自定义 Swagger 配置的重要性。
https://www.cnblogs.com/broadm/p/17875559.html
本文介绍了基于 DotNetty 的通信实现,DotNetty 是微软 Azure 团队开发的.NET 网络库。项目 OpenDeploy.Communication 类库包含编码解码模块和定义通信约定。自定义消息格式 NettyMessage 包括消息头 NettyHeader 和消息体 Body,消息头包含唯一标识、是否同步、终结点等信息,可序列化为 JSON。编码器和解码器分别负责将 NettyMessage 转换为字节流和从字节流中恢复 NettyMessage。
https://www.cnblogs.com/hejiale010426/p/17881978.html
本文讲述了如何构建一个将语音转换为文字的 WebApi 服务。首先,使用 Vscode 创建 WebApi 项目,添加必要的 Whisper.net 依赖包。然后,下载模型和语音示例文件,将其复制到项目目录。接着,创建 WhisperService.cs 处理音频文件并返回识别结果。最后,修改 Program.cs 注册服务并构建 API。服务完成后,通过控制台命令运行并体验,不同显卡的耗时有所差异。
https://www.cnblogs.com/hanbing81868164/p/17876423.html
本文介绍了 Parallel.ForEach 和 AsParallel 两种并行编程工具。Parallel.ForEach 能够在多核处理器上并行执行集合的迭代操作,简化并行编程,适用于简单循环。AsParallel 是 LINQ 的方法,能将查询操作并行化,适合复杂的 LINQ 查询。两者的性能取决于任务类型和数据规模,Parallel.ForEach 适合直接的集合迭代,而 AsParallel 适合需要筛选和映射的复杂查询。在实际应用中,应根据任务需求选择合适的并行工具。
https://www.cnblogs.com/kklldog/p/agileconfig-up-to-net8.html
本文讲述了作者将 AgileConfig 项目升级到.NET8 的经验。首先,作者更新了项目的目标框架和所有 nuget 包,解决了一个弃用包的问题。然后,修改了 dockerfile 以适应.NET8。在本地和 docker desktop 环境中运行正常,但服务器上出现了兼容性错误,通过添加特定参数解决。作者总结.NET 接口稳定,升级过程简单,但新的 runtime 镜像可能与旧版 docker engine 不兼容。文末提供了项目的 GitHub 和 Gitee 地址,并邀请关注公众号。
https://www.cnblogs.com/xiyuanMore/p/17893362.html
本文探讨了安全的重要性和安全开发的概念,提出了从全局视角识别和防范安全问题的必要性。通过分析近期互联网大厂的安全事故,强调了从教训中学习的重要性,并概述了内容、数据、设备和行为四个安全维度。文章还介绍了.NET 的安全基础设施和威胁建模分析方法,强调了随着技术发展,新的安全挑战也随之而来。作者通过分享个人思考和经验,鼓励开发者建立体系化的安全思考框架,并在.NET Conf China 上进一步探讨这些问题。
https://www.cnblogs.com/SunSpring/p/17879703.html
本文讲述了 Asp.Net Core 中配置的概念和实践。主机配置是项目启动时的配置,应用程序配置是运行时的配置。默认主机配置优先级为命令行、DOTNET环境变量、ASPNETCORE环境变量,且部分变量在启动时锁定。launchSettings.json 文件用于本地开发环境配置。默认应用程序配置优先级为命令行、环境变量、用户机密配置、appsettings.{Environment}.json、appsettings.json 和主机配置。配置提供程序负责读取这些配置。机密管理器工具用于存储开发环境中的敏感配置,不在项目目录下。
0.1.1
https://www.cnblogs.com/hejiale010426/p/17893528.html
本文介绍了 CoreFlex 框架,支持.NET 6、.NET 7 和.NET 8,集成 MasaFramework,提供企业级应用开发和 Blazor 的 JS 工具库。框架目标包括 JS 操作、Serilog 日志、限流、审计日志、虚拟文件、系统设置、后台任务和 ChatGpt 客户端案例等模块。Core Flex 模块是框架基础,支持模块化和自动依赖注入。使用时,通过 NuGet 安装包,创建模块需继承 CoreFlexModule 类,实现生命周期方法,并可添加依赖其他模块的特性。CoreFlex.Razor.JsInterop 是 JS 工具库,提供 Cookie 和 LocalStorage/SessionStorage 操作 API。
https://www.cnblogs.com/PatrickLiu/p/17874330.html
本文是《Net 高级调试》系列的第十二篇,深入介绍了 GC 垃圾回收算法、根对象概念及其存在区域、带析构函数对象的回收机制、终结器队列与线程的作用,以及大对象堆的回收策略。文章强调了对.Net 框架底层的理解对调试的重要性,并提供了调试环境的详细说明。通过实际代码的调试过程,验证了理论知识,帮助读者更深入地理解对象的生命周期和 GC 的工作原理。
https://www.cnblogs.com/pzscit/p/17880912.html
本文讨论了高并发场景下的技术策略。介绍了异步编程以避免阻塞,多线程和线程池以提高效率并控制资源使用。并行编程可同时执行多任务,数据流编程则适合大数据处理。强调了内存管理的重要性,提倡使用并发集合和优化数据库访问,如使用缓存和连接池。最后,建议根据实际需求选择合适的优化策略。
https://blog.jetbrains.com/dotnet/2023/12/07/rider-2023-3-release/
https://blog.jetbrains.com/dotnet/2023/12/07/resharper-2023-3-release/
https://blog.jetbrains.com/dotnet/2023/12/07/dotcover-dotmemory-dotpeek-and-dottrace-2023-3-release/
https://github.com/dotnet/BenchmarkDotNet/discussions/2479
https://github.com/StackExchange/StackExchange.Redis/releases/tag/2.7.10
https://github.com/npgsql/npgsql/releases/tag/v8.0.1
https://github.com/AvaloniaUI/Avalonia/releases/tag/11.0.6
https://github.com/microsoft/WindowsAppSDK/releases/tag/v1.5-exp1
在 WinAppSDK 1.5-experimental1·microsoft/microsoft-ui-xaml 中发布 WinUI 3[1]
[Windows App SDK 实验性发布通道 - Windows 应用](https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/experimental-channel#version-15-experimental-150 -实验 1 "Windows App SDK 实验性发布通道 - Windows 应用")
https://devblogs.microsoft.com/dotnet/dotnet-8-networking-improvements/
https://devblogs.microsoft.com/dotnet/extending-web- assembly-to-the-cloud/
https://devblogs.microsoft.com/dotnet/dotnet-conf-2023-recap-videos-slides-demos-and-more/
https://blog.jetbrains.com/qodana/2023/12/qodana-for-net-8-is-almost-ready-try-the-eap-and-let-us-know-what-you-think/
https://qiita.com/nr_ck/items/f22c24c0583309577a5e
https://gitan.dev/?p=320
https://qiita.com/hiro_t/items/556868bc6d1f5fd53a6f
https://blog.alglab.net/archives/csharp-prkkeymap/
https://qiita.com/skitoy4321/items/c6ae2b58245b6874ec35
https://qiita.com/t0r/items/ef2fa3ae15af592e8674
https://qiita.com/hysui/items/ea0b00788f98cbb15980
https://annulusgames.com/blog/unsafe/
https://qiita.com/up-hash/items/47feaf9dbd94763431d7
https://qiita.com/wipiano/items/7fbf5d61d68f29fdbd36
https://qiita.com/up-hash/items/8e9e18c55d23686b2eb1
https://zenn.dev/guil/articles/dfdcba6a7f4636
https://qiita.com/up-hash/items/8eb07cdace041896e3e8
https://qiita.com/seiya2130/items/6c639efadbfcb279e4ed
https://qiita.com/hiro_t/items/f37256a59946c6c0faa7
https://aneuf.hatenablog.com/entry/2023/12/12/000000
https://qiita.com/up-hash/items/059975d06347b81087de
https://qiita.com/lx-sasabo/items/d3791b305d85bb686ae4
https://qiita.com/sh1ch/items/936945705d0c7a4ab655
https://qiita.com/Shaula/items/563ef337ae578ceebede
https://markheath.net/post/create-zip-files-in-blob-storage
https://qiita.com/onsen_koichi/items/a0d9a88254eec34c1afc
https://qiita.com/diontools/items/2d5625419bb4f43da1a5
https://qiita.com/aqua_ix/items/ba9533d60633abe4c850
https://zenn.dev/inuinu/articles/07ea814ca573c1
https://qiita.com/ingen084/items/8c4492bfb3cc50129507
https://zenn.dev/chomado/articles/231219-dot-net-conf
https://blog.ndepend.com/net-native-aot-explained/
https://zenn.dev/chomado/articles/231207-semantic-kernel-rc3
https://qiita.com/akid3020/items/df2fed5ecfd1ec9e4d33
https://devblogs.microsoft.com/dotnet/learn-dotnet8-beginner-videos/
https://zenn.dev/nuits_jp/articles/2023-12-06-use-windows-data-pdf-out-of-uwp
https://zenn.dev/nuits_jp/articles/2023-12-06-pdf-to-jpeg-benchmarks
https://qiita.com/Tanakancolle/items/b12c48e0cf0fe78af2ad
https://dev.to/asimmon/optimizing-net-solution-architecture-for-faster-compilation-through-project-decoupling-5eg6
https://qiita.com/nr_ck/items/6faa86c5e381fb96c67a
https://andrewlock.net/customising-the-new-telemetry-logging-source-generator/
https://henriquesd.medium.com/net-aspire-296e24b952c0
https://devblogs.microsoft.com/visualstudio/scroll-to-expand-document-tabs/
https://blog.jetbrains.com/dotnet/2023/12/04/another-look-into-the-future-with-riders-predictive-debugger/
https://dev.to/milanjovanovictech/global-error-handling-in-aspnet-core-8-2mki
https://qiita.com/Hydrangeas/items/bca8ecc5d5cb0f14a37c
https://blog.elmah.io/dependency-injection-using-keyed-services-is-finally-in-asp-net/
https://www.endjin.com/blog/2023/12/how-dotnet-8-boosted-json-schema-performance-by-20-percent-for-free
https://timheuer.com/blog/add-environment-variables-to-aspire-services/
https://devblogs.microsoft.com/dotnet/creating-aot-兼容-libraries/
https://ufcpp.net/blog/2023/12/escape-escape/
https://khalidabuhakmeh.com/testing-typesense-search-with-testcontainers-and-dotnet
https://migeel.sk/blog/2023/12/08/building-bare-metal-bootable-game-for-raspberry-pi-in-csharp/
https://dev.to/bellonedavide/pre-commit-hooks-with-huskynet-build-format-and-test-your-net-application-before-a-git-commit-3cbd
https://andrewlock.net/redacting-sensitive-data-with-microsoft-extensions-compliance/
https://zenn.dev/naminodarie/articles/dotnet_native_aot_i
https://blog.jetbrains.com/dotnet/2023/12/11/net-annotated-monthly-december-2023/
https://marketplace.visualstudio.com/items?itemName=TimHeuer.GitHubActionsVS
https://x.com/timheuer/status/1731011137389695140?s=12
image-20231213224233925https://x.com/aaronontheweb/status/1731500517816201611?s=12
image-20231213224321452国内板块由 InCerry 进行整理 : https://github.com/InCerryGit/WeekRef.NET
其余内容来自 Myuki WeekRef,由 InCerry 翻译(已获得授权) : https://github.com/mayuki/WeekRef.NET
「由于笔者没有那么多时间对国内的一些文章进行整理,欢迎大家为《.NET 周刊-国内文章》板块进行贡献,需要推广自己的文章或者框架、开源项目可以下方的项目地址提交 Issue 或者在我的微信公众号私信。」
格式如下:
10~50 字左右的标题
对应文章或项目网址访问链接
200 字以内的简介,如果太长会影响阅读体验
https://github.com/InCerryGit/.NET-Weekly
[1]
在 WinAppSDK 1.5-experimental1·microsoft/microsoft-ui-xaml 中发布 WinUI 3: https://github.com/microsoft/microsoft-ui-xaml/releases/tag/winui3/release/1.5-experimental1