.NET周报【10月第3期 2022-10-25】
国内文章
聊一聊被 .NET程序员 遗忘的 COM 组件
https://www.cnblogs.com/huangxincheng/p/16799234.html
将Windows编程中经典的COM组件拿出来再复习一下,解释了COM组件互相调用的原理。
使用 C# 开发的轻量级开源数据库 LiteDB
https://mp.weixin.qq.com/s/xz7T_aMaHeybHWz5byD0wg
介绍一个开源的数据库组件,LiteDB 是一个小型、快速、轻量级的 .NET NoSQL 嵌入式数据库。
.NET性能优化-使用结构体替代类
https://mp.weixin.qq.com/s/11Tszw-Sa1rQq5Zka7g08Q
通过一个案例,讲述如果使用结构体来替代类,从而优化程序的内存占用和运行速度;并介绍其性能优化的原理。
.NET性能优化-使用Collections.Pooled
https://mp.weixin.qq.com/s/wGNLL0C9UTwaT2TTFv2rDg
讲述如何通过Collections.Pooled
复用内存,降低GC和提升性能的故事,并比较了和普通集合类型的差别。
.NET性能系列文章一:.NET7的性能改进
https://mp.weixin.qq.com/s/F5qWGMRmRc_ZkXqwbsjG5w
主要讲述了哪一些API在.NET7中变得更快,比如LINQ中的Max()、Min()等等。
.NET 6.0 抓取包开源工具WindivertDotnet
https://mp.weixin.qq.com/s/IdkuAAWzjKnV7kYAWimCHw
WindivertDotnet是面向对象的WinDivert的dotnet异步封装,其保持着完整的底层库能力,又提供dotnet的完美语法来操作。
.NET Core 开发跨平台服务器性能监控工具
https://mp.weixin.qq.com/s/H8VFDb3E3S3WodYYX_hCPA
介绍一个基于C#开发的、跨平台,监控GC、CPU、内存、机器网络、磁盘空间等关键指标的工具。
Uno开发的小游戏
https://mp.weixin.qq.com/s/H-Vl2k3f3MkqVBn5tZZauQ
介绍使用Uno开发的WebAssembly小游戏
记一次 .NET 某金融企业 WPF 程序卡死分析
https://mp.weixin.qq.com/s/pj4LxG9hfUBkI4g8CTvsSg
介绍了一个作者前段时间遇到了一个难度比较高的Dump分析过程。
dotnet 用 SourceGenerator 源代码生成技术实现中文编程语言
https://www.cnblogs.com/lindexi/archive/2022/10/19/16804899.html
介绍了如何使用.NET的SourceGenerator技术实现一个中文编程语言,非常有趣的一个实现。
细聊.Net Core中IServiceScope的工作方式
https://www.cnblogs.com/wucy/archive/2022/10/17/16791563.html
通过源码详细的解析了IServiceScope的工作方式。
主题
宣布在.NET7 RC2中支持.NET MAUI - .NET Blog
https://devblogs.microsoft.com/dotnet/dotnet-maui-rc2/
对.NET 7 RC 2的.NET MAUI支持已经发布。
该版本包括对Xcode 14 for iOS 16的支持,并可在Visual Studio 17.4 Preview 4中使用。 这个版本也支持在生产环境中使用。
OpenSilver 1.1 发布!
https://www.opensilver.net/announcements/opensilver1-1.aspx
OpenSilver的1.1版本已经发布,这是一个运行在WebAssembly上的开源实现,旨在实现Silverlight兼容性。
该版本增加了对100多个Silverlight功能的支持,增加了对包括Telerik UI在内的各种第三方库的支持,并将性能提高了3倍。
此外,计划于明年初发布的2.0版本将增加对VB.NET的支持。
- OpenSilver越来越接近于与早已死亡的微软Silverlight的开源平等地位 -- Visual Studio Magazine
- OpenSilver 1.1承诺与Silverlight应用程序99%的代码兼容
今天发布:Windows Dev Kit 2023又名Project Volterra - Windows Developer Blog
适用于Arm架构的Windows开发套件现在已经上市,名称为Windows Dev Kit 2023。
Windows Dev Kit 2023是在Build 2022中以Project Volterra的名义宣布的一个开发者套件,具有骁龙8cx第三代,32GB内存和512GB NVMe SSD。
从今天起,澳大利亚、加拿大、中国、法国、德国、日本、英国和美国都可以订购。 在日本,价格将是99,880日元(含税)。
发布 Diagnostics - v6.0.351802 · dotnet/diagnostics
https://github.com/dotnet/diagnostics/releases/tag/v6.0.351802
dotnet-{dump,monitor,trace}(诊断程序)的 6.0.351802 已经发布。
它包括dotnet-dump中的一些错误和改进,包括在Linux/MacOS上扩展SOS命令。dotnet-monitor和dotnet-trace有错误修复。
对旧版Visual Studio的支持提醒 - Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/support-reminder-for-older-versions-of-visual-studio/
关于Visual Studio的提醒,它将不再被支持。
- Visual Studio 2012:扩展支持于2023年1月10日结束
- Visual Studio 2013:扩展支持于2024年4月9日结束
- Visual Studio 2015:扩展支持于2025年10月14日结束
- Visual Studio 2017:主流支持于2022年4月12日结束,扩展支持于2027年4月13日结束(15.9)。
- Visual Studio 2019(16.9):支持于2022年10月11日结束。 建议迁移到16.11以继续支持2019年的工作
- Visual Studio 2019预览版:由于更新结束,建议迁移到发布频道或迁移到2022年的预览频道
文章还讨论了一些方面,如管理员如何管理更新和删除不再支持的组件。
文章、幻灯片等
你好 .NET! - AtomicJar
https://www.atomicjar.com/2022/10/hello-dotnet/
由Testcontainers的.NET实现的维护者(他们来自AtomicJar)介绍Testcontainers。
在这里,我们将介绍Testcontainers的.NET实现、资源库的增长以及与xUnit.net整合的例子。
dotnet-monitor: 在AKS中启用一个诊断边车
https://www.poppastring.com/blog/dotnetmonitor-enabling-a-diagnostics-sidecar-in-aks
关于如何在AKS(Azure Kubernetes Serivce)Pod中作为边车运行dotnet-monitor的视频。
艰辛历程中学习到的.NET系统编程.pptx
https://www.slideshare.net/petabridge/net-systems-programming-learned-the-hard-waypptx
由Akka.NET开发人员提供的关于.NET低级组件API的解释性幻灯片。
.NET Systems Programming Learned the Hard Way
Recording: https://t.co/WvVzjp98Ip
Slides: https://t.co/34ohASQ69w#dotnet #performance— Aaron Stannard (@Aaronontheweb) October 19, 2022
[C#]使用MemoryPack - 基础知识1 | spacekey.dev
https://spacekey.dev/memorypack-1
使用二进制序列化工具MemoryPack的系列文章
- [C#]MemoryPack - ASP.NET Core中使用 | spacekey.dev
- [C#]MemoryPack - TypeScript中使用 | spacekey.dev
- [C#]MemoryPack - MemoryPackable特性 | spacekey.dev
CLR 事件: 选择nettrace文件格式!
https://chnasarre.medium.com/clr-events-go-for-the-nettrace-file-format-6b363364c2a3
关于如何在nettrace二进制流中接收来自CLR的诊断事件的文章。
使用WSL和Rider的ASP.NET/Kubernetes开发 (1)
https://zenn.dev/dynamitecoolguy/articles/4530e1134bcbac
文章描述了在WSL上运行Rider以及使用ASP.NET Core和Kubernetes进行开发的准备步骤。
使用.NET 6 + Hot Chocolate v12 + Redis实现GraphQL API网关
关于如何使用.NET 6、Hot Chocolate v12和Redis实现GraphQL API网关的文章。
为你的.NET项目编写你自己的代码覆盖统计脚本
关于如何创建自己的一系列步骤以获得.NET项目的代码覆盖并输出报告的文章。
ASP.NET Core中的自定义脚手架模板 | dotnetthoughts
https://dotnetthoughts.net/custom-scaffold-templates-in-asp-net-core/
关于如何在项目层面定制ASP.NET Core MVC模板的文章。
通过API-Gateway使用SAM从AWS::Serverless::Function下载镜像 - Qiita
https://qiita.com/karuakun/items/e61007864364ab164774
关于在使用AWS无服务器应用程序模型创建应用程序时如何通过API网关处理二进制数据的文章。
10个你应该尝试的Visual Studio 2022主题(免费主题!)
https://blog.dotnetsafer.com/best-visual-studio-2022-themes/
介绍可以添加到Visual Studio 2022的十个不同主题。
构建自己的反向代理
https://satish1v.medium.com/build-your-own-reverse-proxy-bf3232e7e5f3
关于在YARP中创建一个简单的反向代理服务器的文章。
现场错误处理 - Ayende @ Rahien
https://ayende.com/blog/198369-A/error-handling-in-the-field
一个关于如何收集应用程序崩溃报告(UnhandledException)的故事,最近的Windows更新改变了WPF的行为,在内部引起了一个错误,所以它被忽略了,但很微妙。
如何用Azure通信服务在.NET中大规模地发送电子邮件
关于如何使用Azure通信服务来发送电子邮件的文章。
试用.NET 7中ASP.NET Core Blazor的新功能
https://zenn.dev/okazuki/articles/blazor-dotnet7
介绍.NET 7中ASP.NET Core Blazor的新功能的文章。
它提到了WebAssembly加载、绑定修改器、虚拟化改进和导航改进。
图书馆、资源库、工具等
Sergio0694/PolySharp:PolySharp为C#语言特性提供了生成的、仅有源码的Polyfills,以轻松使用所有运行时无关的特性。添加一个引用,将你的C#版本设置为最新版本,然后尽情享受吧!
https://github.com/Sergio0694/PolySharp
这个想法是通过为目标框架生成额外的类型来提供新的语言特性,这些类型不包含属性(如CallerArgumentExpression
)或结构(如Range
)类型,这些都是C#语言特性所要求的。Polyfill。
https://twitter.com/SergioPedri/status/1584482651271856128
xt0rted/dotnet-startup-projects: 一个dotnet工具来管理一个解决方案的多个Visual Studio启动项目
https://github.com/xt0rted/dotnet-startup-projects
改变解决方案所启动的Visual Studio版本的工具。
https://twitter.com/xt0rted/status/1581880780745109505?s=12&t=nWJI9WhjD8PixDRVN--Rlw
网站、文件等
.NET中的网络遥测 - .NET | Microsoft Learn
https://learn.microsoft.com/en-us/dotnet/fundamentals/networking/networking-telemetry
总结遥测信息的文件,如.NET中的网络相关计数器。
推文
谈及代码生成的挑战,尽管我们正在努力使ASP.NET Core和Entity Framework Core与NativeAOT兼容。
解决方案资源管理器中的一个小技巧,"显示所有文件",可以让你看到你在SDK中加载的目标、道具等,等等。
如果有一件事我不喜欢,那就是被捕获但隐藏了另一个问题的异常(或者可以避免,而使用更简单的检查)。Mono调试API使以编程方式监控您的Unity游戏/编辑器变得极其简单。
深入理解
引入System.Runtime.TieredPGO 由EgorBo提供 · Pull Request #26350 · dotnet/sdk
https://github.com/dotnet/sdk/pull/26350
在.NET 7中增加了一个选项,通过环境变量TieredPGO
和MSBuild属性来启用分层PGO。
由"[UnscopedRef]"和防御性复制的结构产生的对范围外堆栈内存的引用,编译器应报告错误。 · Issue #64776 · dotnet/roslyn
https://github.com/dotnet/roslyn/issues/64776
一个编译器错误,允许编写的代码返回一个已经被防御性地复制到堆栈的值的引用,并允许不应该有的访问。
版权
原文版权:mayuki
原文链接:https://github.com/mayuki/WeekRef.NET/blob/master/input/2022/2022-10-25.md
翻译版权:InCerry
翻译链接:https://github.com/InCerryGit/WeekRef.NET/blob/master/input_zh-CN/2022/2022-10-25.md
.NET周报【10月第3期 2022-10-25】的更多相关文章
- .NET周报【10月第2期 2022-10-17】
主题 宣布 .NET 7 发布候选版本 2 - .NET Blog https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-2/ .N ...
- .NET周报【10月第1期 2022-10-11】
本周精选 继C#实现await/async无栈协程几年后,davidwrighton实现了.NET绿色线程(有栈协程)的原型 https://github.com/dotnet/runtimelab/ ...
- 【10月新版】Aspose.Pdf 10月新版V17.10发布 | 附下载
2019独角兽企业重金招聘Python工程师标准>>> Aspose.Pdf for .NET 17.10 更新 功能和改进 核心 概述 类别 PDFNET-38067 支持DICO ...
- .NET周报【11月第1期 2022-11-07】
国内文章 开源·安全·赋能 - .NET Conf China 2022 https://mp.weixin.qq.com/s/_tYpfPeQgyEGsnR4vVLzHg .NET Conf Chi ...
- 重大升级!SEER见证人,您的节点需要在10月28日前更新
SEER的区块链底层目前还处于不断完善中.一些新的完善更新会为区块链的基础设施--节点软件添加新的功能.理事会将会就是否接受新的节点版本进行共识投票,如果提案投票通过,将要求所有见证人在指定时间前将节 ...
- [C#项目开源] MongoDB 可视化管理工具 (2011年10月-至今)
正文 该项目从2011年10月开始开发,知道现在已经有整整5年了.MongoDB也从一开始的大红大紫到现在趋于平淡. MongoCola这个工具在一开始定位的时候只是一个Windows版本的工具,期间 ...
- 中国式商业智能报表ActiveReports免费公开课,10月20日开讲
ActiveReports公开课全方位报表解决方案,满足商业报表五大需求 [开课时间]10月20日[主讲老师]葡萄城报表产品经理[开课形式]网络在线公开课[活动费用]前50名免费 适合人群:报表开发人 ...
- JavaScript图表FusionCharts免费在线公开课,由印度原厂技术工程师主讲,10月13日发车
FusionCharts公开课达人还你做 轻松晋升图表大师 [开课时间]10月13日 14:30[主讲老师]印度原厂技术工程师[开课形式]网络在线公开课[活动费用]前50名免费 现在就可以报名哦 报 ...
- 10月28日PHP基础知识测试题
本试题共40道选择题,10道判断题,考试时间1个半小时 一:选择题(单项选择,每题2分): 1. LAMP具体结构不包含下面哪种(A) A:Windows系统 B:Apache服务器 C:MySQL数 ...
随机推荐
- 活动回顾丨ALC Beijing 首场 Meetup:《开源到底有多难?》
8月16日,ALC Beijing 的首次线下沙龙活动 -- <开源到底有多难?>在微软大厦如期举行.本次沙龙主要是分享开源开发经验.探讨如何让开源项目更加茁壮成长,以及分享 ASF 管理 ...
- Redis 08 地理位置
参考源 https://www.bilibili.com/video/BV1S54y1R7SB?spm_id_from=333.999.0.0 版本 本文章基于 Redis 6.2.6 Redis 的 ...
- MybatisPlus——实现多数据源操作
多数据源 适用:一般工作时候会有多个数据库,每个库对应不同的业务数据.程序如果每次数据都访问同一个数据库,该数据库压力很大访问会很慢. 官方文档:https://baomidou.com/(建议多看看 ...
- ORA-01950: no privileges on tablespace 'USERS'-- 解决办法
ORA-01950: no privileges on tablespace 'USERS' 原因: 在表空间 "USERS" 无权限 解决办法: 用户登录,查看当前用户所 ...
- 【c语言学习】1 基础环境安装调试
1-1下载 vs2019 vs2019下载链接https://visualstudio.microsoft.com/zh-hans/vs/community/ 1-2安装配置环境 记得勾选上c++开发 ...
- iOS WebRTC 点对点实时音视频流程介绍
前言 公司某个项目需要接入音视频即时通讯, 功能类似微信的拨打视频通话,语音通话的场景.那么对于音视频通讯会用到什么技术呢?没错,它就是 WebRTC . 什么是WebRTC WebRTC,名称源自网 ...
- 字节微服务HTTP框架Hertz使用与源码分析|拥抱开源
一.前言 Hertz[həːts] 是一个 Golang 微服务 HTTP 框架,在设计之初参考了其他开源框架 fasthttp.gin.echo 的优势, 并结合字节跳动内部的需求,使其具有高易用性 ...
- 数据库基础操作 part1
初识数据库 数据库相关概念 数据库管理软件: 本质就是一个C/S架构的套接字程序 服务端套接字 客户端套接字 操作系统: Linux 操作系统: 随意 计算机(本地文件) 计算机硬件 应用流程: 服务 ...
- C语言输入输出格式符
C语言输入输出格式符 printf函数(格式输出函数) 1.一般格式 printf(格式控制,输出表列) 例如:printf("i=%d,ch=%c\n",i,ch); 说明: ( ...
- 基于 iframe 的微前端框架 —— 擎天
vivo 互联网前端团队- Jiang Zuohan 一.背景 VAPD是一款专为团队协作办公场景设计的项目管理工具,实践敏捷开发与持续交付,以「项目」为核心,融合需求.任务.缺陷等应用,使用敏捷迭代 ...