Jetbrains Blog原文
dotInsights | 2026年8月
你知道吗? 有没有想过为什么 C# 使用分号来结束一条语句?显然,这源自它与 Java 等语言共享的 C/C++ 血统,但 C 又是从哪里继承的呢?那就是 ALGOL,在 ALGOL 中分号用于分隔语句。
但为什么是分号?在自然语言语法中,分号分隔两个独立但相关的从句;它也可以用来分隔列表中的项目(你看到我刚才的用法了吗?)。而程序无非是一系列独立但相关从句的列表,不是吗?
(额外标点小知识:逗号用于分隔列表项,就像函数调用中的参数一样。句号用于结束一个完整的思想,如一个句子或段落。ALGOL 如何标记程序单元的结束?没错,就是用句号!)
[LOADING...]
欢迎阅读 JetBrains 的 dotInsights! 本通讯是获取最新 .NET 和软件开发相关信息的家园。
🔗 链接
以下是来自开发者社区的最新内容。
- ASP.NET Core 中可为空的 GUID 路由约束 -- Sebastian Nilsson
- 封闭类层次结构:探索 .NET 11 预览版——第 4 部分 -- Andrew Lock
- 使用 Verify 在 C# 中进行快照测试,告别回归:实用指南 -- Davide Bellone
- C# 中的 HttpClient 流式处理:HttpCompletionOption、ReadAsStreamAsync 与服务器发送事件 -- Nick Cosentino
- 结合 Microsoft.UI.Reactor 与 Worker 项目构建 Windows 托盘应用 -- Morten Nielsen
- Windows 11 现在可以通过 WSL 容器运行 Linux 容器,无需 Docker Desktop(亲测) -- Abhijith M B
- EF Core 中的 Add 与 AddRange:你需要停止重复的性能迷思 -- Chris Woodruff
- 代码审查如今只是走过场 -- John Bristowe
- .NET 宿主进程:Main() 之前运行了什么,以及它为什么会卡住 -- David McCarter
- 更差即更好:JSON 与 XML 之比较 -- Mark Seemann
- 最好的代码是你按 Shift+Delete 删除的那些 -- Oren Eini
- 我每天都在用的 Docker CLI 命令 -- James Joyner
- 从浏览器中将 WPF 应用迁移到 Web -- XAML.io Team
- 如何在不使用 JavaScript 的情况下构建深色模式切换 -- Jakub T. Jankiewicz
- ActivitySource 在 .NET 的 OpenTelemetry 中的作用 -- Bart Wullems
- 使用临时表跟踪 EF Core 的每一次记录变更 -- David Grace
- AI 代理中工具选择的完整指南 -- Shittu Olumide
- 咖啡与开源对话——Jimmy Bogard -- Isaac Levin
- 现已推出:.NET 11 对 .NET MAUI 的更新 -- Leomaris Reyes
- 多租户与数据库无关 -- Derek Comartin
- 合成环状加载控件 [Avalonia] -- Stefan Koell
- C# Async/Await 简明教程 -- Lou Creemers
- 如何记录 JSON 而不让终端变成一面文本墙 -- JavaScript Tools
- 什么是 Webhook?端点、示例及其工作原理 -- Jesse Sumrak
- C# 技巧:使用必需成员防止无效的对象初始化(注意 SetsRequiredMembers 特性!) -- Davide Bellone
- 你其实已经在使用 .NET 的 ChangeToken(只是你不知道而已) -- Khalid Abuhakmeh 和 Al Rodriguez
- 在 .NET API 中实现零代码验证 -- Pavel Kalandra
- Git worktree 入门指南 -- Nicholas C. Zakas
- 不要在 Unity 中使用单例 | 游戏系统详解 -- Stacey Haffner
- URL 存储与比较指南 -- Eric Lawrence
- 迪杰斯特拉最短路径算法 -- Kirupa Chinnathambi
- TimeProvider 与不可测试的 DateTime.Now 之终结 -- Maarten Balliauw
- 不再接受已泄露密码:将 HaveIBeenPwned 与 Duende UserManagement 集成 -- Al Rodriguez 和 Khalid Abuhakmeh
- .NET Aspire:忘记 WithReference 的代价 -- Bart Wullems
☕ 咖啡时间
休息一下,看点更有趣的内容。
DoomPaint——通过利用剪贴板和粘贴功能,将 MS Paint 用作可玩游戏画面的 Doom。包含 Doom 共享版,并支持音乐和音效 -- Mark Russinovich。别问为什么。没有为什么。就是这样。
是的,这是 .NET 通讯中的 Java 故事预告,但谁不爱一点极客历史呢?
200+ 个只有程序员才懂的搞笑软件开发双关语与笑话 -- 做好准备。
🗞️ JetBrains 动态
JetBrains 最近有什么新消息?快来看看:
- 我们发布了 2026.2 版本的 dotUltimate 工具系列——Rider 2026.2,带来大量新功能,包括面向代理的新技能和质量检查钩子、WPF 热重载、TypeScript 7 支持,以及针对 Unreal Engine 和 Godot 改进的游戏开发功能。ReSharper 2026.2 加入了 Junie 支持,这也是我们借助 ACP 向开放 AI 平台迈进的一部分。同时还默认启用了进程外模式,因此 ReSharper 的大部分功能将在 Visual Studio 进程之外运行。
- ReSharper for Visual Studio Code 2026.2 已发布,现在包含用户最需要的第一功能——调试!众所周知,调试只是故事的一半,所以请阅读 Isaac 的第一篇博客文章,了解 ReSharper 如何帮助你编写 C#,不仅限于 VS Code,还包括所有其他兼容编辑器(Cursor、Google Antigravity IDE、Devin Desktop、Kiro 等)。请在 Marketplace 或 OpenVSX Registry 查看。
- 我们已公布每年一度的游戏开发日,将于 9 月 28 日举行。请务必预留时间,并向我们提交会议提案!
- 最后,在我们继续评估声称能减少令牌消耗的技能系列中,我们来看看 Ponytail 技能。它真的能将代理代码减少 54% 吗? #QTWTAIN(你也可以查看我们对 rtk 技能的评估——它真的能将代理令牌削减 60-90% 吗?你或许能从标签中猜到……)
✉️ 有评论或问题?请给我们发送邮件。
订阅 dotInsights