.NET周报【1月第1期 2023-01-06】
国内文章
【开源】基于.net6+gtksharp实现的Linux下的图形界面串口调试工具
https://www.cnblogs.com/flykai/p/17007554.html
由于公司的上位机等硬件项目都是基于Linux操作系统的,软硬件通讯调试麻烦,市面上又没有好用的图形操作软件来实现便捷的串口调试,还有一方面原因,公司的销售及售后人员对Linux操作系统比较陌生不会操作,只能依靠图形软件,于是本人便抽空便基于.net6及gtk提供的sdk,实现了一个图形界面的串口调试工具,可运行于window操作系统及Linux操作系统(仅在Ubuntu20.4)做了测试。
【C#】分享一个简易的基于时间轮调度的延迟任务实现
https://www.cnblogs.com/gmmy/p/17015538.html
在很多.NET开发体系中开发者在面对调度作业需求的时候一般会选择三方开源成熟的作业调度框架来满足业务需求,比如Hangfire、Quartz.NET这样的框架。但是有些时候可能我们只是需要一个简易的延迟任务,这个时候引入这些框架就费力不讨好了。于是本文介绍了一种基于时间轮的延迟任务实现。
微软公布 Entity Framework Core 8 规划
https://mp.weixin.qq.com/s/jG8wRKCFutcweENPGpLoAQ
微软.NET团队在博客上公布了有关 Entity Framework Core 8.0(也称为 EF Core 8 或 EF8)的未来规划。
一个用于生成 PDF 文档的开源 .NET 库
https://mp.weixin.qq.com/s/hwNkrfi13JccGbrv1VSfJQ
今天给大家推荐一个用于生成 PDF 文档的开源 .NET 库QuestPDF。目前已经有4k+的Star。
快速入门 .NET nanoFramework 开发 ESP32-Pico 应用
https://mp.weixin.qq.com/s/T8NFQbErDSDfZDqzW-5zmA
本文是一篇适合初学者的 .NET nanoFramework 保姆级入门教程,并提供了基本的入门程序并介绍了微雪的 ESP32-S2-Pico 使用 .NET nanoFramework 开发单片机应用的基础知识。
C#中如何进行com口操作?
https://mp.weixin.qq.com/s/xF-8Gr3A5SBbaZ5-D8i8yQ
本文介绍了C#中如何进行com口操作。
ASP.NET Core 使用RedLock.net 实现分布式锁
https://mp.weixin.qq.com/s/HbInBg-WwpeEPH3WwwXd7w
本文介绍了如何使用RedLock.NET实现分布式锁。
一次SQL调优 聊一聊 SQLSERVER 数据页
https://mp.weixin.qq.com/s/WqiZjVh69o6YZHCROy4kpA
最近给一位朋友做 SQL 慢语句
优化,花了些时间调优,遗憾的是 SQLSERVER 非源码公开,玩起来不是那么顺利,不过从这次经历中我觉得明年的一个重大任务就是好好研究一下它,争取在 SQLSERVER 性能优化上做一些成绩,哈哈! 个人觉得要想深入研究 SQLSERVER,得从它的存储引擎说起,说到存储引擎又得从核心的 数据页
说起,毕竟 mdf 就是由 数据页
拼出来的,当然理解的不对大家可以指出来。
聊一聊 SQLSERVER 的行不能跨页
https://mp.weixin.qq.com/s/1TWNFOvY6U6SVixXRWhYag
相信有很多朋友在学习 SQLSERVER 的时候都听说过这句话,但大多都是记忆为主,最近在研究 SQLSERVER,所以我们从 底层存储
的角度来深入理解下。
再聊一下那 SQLSERVER 行不能跨页的事
https://mp.weixin.qq.com/s/mG4MqW1m5PMBJ-9lq1GXPw
上一篇写完了之后,马上就有朋友留言对记录行的 8060byte
限制的疑惑,因为他的表记录存储了大量的文章,存储文章的字段类型用的是 nvarchar(max)
,长度很显然是超过 8060byte
的,请问这个底层是怎么破掉 8060byte
的限制的?
dotnet 代码优化 聊聊逻辑圈复杂度
https://blog.lindexi.com/post/dotnet-代码优化-聊聊逻辑圈复杂度.html
本文属于 dotnet 代码优化系列博客。相信大家都对圈复杂度这个概念很是熟悉,本文来和大家聊聊逻辑的圈复杂度。代码优化里面,一个关注的重点在于代码的逻辑复杂度。一段代码的逻辑复杂度越高,那么维护起来的难度也就越大。衡量代码的逻辑复杂度的一个维度是通过逻辑圈复杂度进行衡量。本文将告诉大家如何判断代码的逻辑圈复杂度以及一些降低圈复杂度的套路,让大家了解如何写出更好维护的代码。
主题
【英文】grpc/grpc-dotnet 发布版本 v2.51.0
https://github.com/grpc/grpc-dotnet/releases/tag/v2.51.0
gRPC (grpc-dotnet) v2.51.0已经发布。
这个版本包含了一些修复和改进,包括改进的日志信息。
【英文】Microsoft.UI.Xaml 发布版本 v2.8.2
https://github.com/microsoft/microsoft-ui-xaml/releases/tag/v2.8.2
WinUI v2.8.2已经发布。
这个版本主要包含一些错误的修复。
【英文】snoopwpf/snoopwpf 发布版本 v5.0.0
https://github.com/snoopwpf/snoopwpf/releases/tag/v5.0.0
Snoop v5.0.0已经发布。
该版本取消了对.NET Framework 4.5.2及以前版本和.NET Core 3.0的支持,增加了对.NET 6及更高版本的支持。 还包括其他一些修复和改进。
文章、幻灯片
【日文】在MemoryPack中定制序列化和反序列化的一些方法 | Yucchiy的注释
https://blog.yucchiy.com/2023/01/memorypack-custom-serialize-deserialize/
介绍了序列化过程的定制,包括如何在MemoryPack的序列化和反序列化过程前后夹住自己的处理。
【日文】从快捷方式文件(.lnk)中获取链接目的地(CsWin32版本)
https://zenn.dev/udaken/articles/cswin32_get_target_from_shortcut_file
如何使用CsWin32进行COM调用并从快捷方式文件中获得链接目的地。
【英文】EF Core中Add和AddAsync的区别
https://medium.com/medialesson/difference-between-add-and-addasync-in-ef-core-6b8cfd8f7cdb
解释Entify Framework Core中Add和AddAsync方法的区别。
谈到AddAsync只有在使用特殊的SQLServer值生成器时才是异步的,而Add应该用于其他模式。
【英文】回顾20年的NAudio历程
https://markheath.net/post/naudio-20-year-anniversary
回顾NAudio的20年,以及该项目目前的状况。
【日文】IServiceCollection的扩展方法列表 - Qiita
https://qiita.com/mxProject/items/7d7a835adfb300d07fec
介绍了Microsoft.Extensions为IServiceCollection提供的扩展方法,包括Microsoft.Extensions.DependencyInjection。
【英文】.NET Annotated 月报|2023年1月|.NET工具博客
https://blog.jetbrains.com/dotnet/2023/01/04/net-annotated-monthly-january-2023/
2023年1月JetBrains发布的.NET相关信息汇总文章。
【英文】最小化API端点的幕后初探:最小化API的幕后 - 第一部分
初步了解ASP.NET Core的Minimal API的端点构建过程的幕后情况。
网站、文件等
推特
FNA谈到了将NativeAOT移植到游戏机上。
https://twitter.com/thespydog/status/1609602883418296320
bflat(一种将C#编译为本地二进制文件的工具)现在可以针对UEFI并进行构建(无需操作系统,可以在裸机上工作)。
https://twitter.com/mstrehovsky/status/1610043782061514752
版权声明
- 国内板块由 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
.NET性能优化交流群
相信大家在开发中经常会遇到一些性能问题,苦于没有有效的工具去发现性能瓶颈,或者是发现瓶颈以后不知道该如何优化。之前一直有读者朋友询问有没有技术交流群,但是由于各种原因一直都没创建,现在很高兴的在这里宣布,我创建了一个专门交流.NET性能优化经验的群组,主题包括但不限于:
- 如何找到.NET性能瓶颈,如使用APM、dotnet tools等工具
- .NET框架底层原理的实现,如垃圾回收器、JIT等等
- 如何编写高性能的.NET代码,哪些地方存在性能陷阱
希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET性能问题和宝贵的性能分析优化经验。目前一群已满,现在开放二群,可以直接扫码进入。
如果提示已经达到200人,可以加我微信,我拉你进群: ls1075
另外也创建了QQ群,群号: 687779078,欢迎大家加入。
.NET周报【1月第1期 2023-01-06】的更多相关文章
- .NET周报【10月第3期 2022-10-25】
国内文章 聊一聊被 .NET程序员 遗忘的 COM 组件 https://www.cnblogs.com/huangxincheng/p/16799234.html 将Windows编程中经典的COM ...
- .NET周报【11月第1期 2022-11-07】
国内文章 开源·安全·赋能 - .NET Conf China 2022 https://mp.weixin.qq.com/s/_tYpfPeQgyEGsnR4vVLzHg .NET Conf Chi ...
- .NET周报【10月第1期 2022-10-11】
本周精选 继C#实现await/async无栈协程几年后,davidwrighton实现了.NET绿色线程(有栈协程)的原型 https://github.com/dotnet/runtimelab/ ...
- .NET周报【10月第2期 2022-10-17】
主题 宣布 .NET 7 发布候选版本 2 - .NET Blog https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-2/ .N ...
- 七牛云 GO 语言周报【七月第 2 期】
全世界有多少 Gopher? 上周的周报中,我们介绍了 Go 语言的排名已经进入到前十.那么世界上到底有多少 Gopher 呢? 作者列出了以下计算公式: Gopher 数量 = 全世界的开发者数量 ...
- F#周报2019年第11期
新闻 Bolero:WebAssembly中的F# 尝试WebAssembly里的F# JetBrains的fsharp-support 2019.1 ML.NET 0.11发布 Outreachy内 ...
- F#周报2019年第16期
新闻 Ionide试验版本 FSharp路线图介绍 Blazor官方预览 .NET Framework 4.8发布 .NET Core 3 Preview 4发布 需要来自FSharp.Data.Sq ...
- F#周报2019年第7期
新闻 Visual Studio 2019预览版3,F#性能修复 Bolero 0.3发布,HTML模版热加载 Fantomas在线升级至Fantomas 2.9.2 使用F#开发的随机访问Excel ...
- F#周报2019年第17期
新闻 .NET版本的Apache Spark Apache Spark预览版介绍 F# Apache Spark示例 微软Build 2019大会(5月6日至8日) Rider用于F#的解决方案内的重 ...
- F#周报2018年第51期
新闻 有经验的开发者选择F# 2018年10佳技术讲话 试用F#开发WebAssembly Fable.Remoting: 刷新访问令牌 F#开发WebAssembly现在可以使用代码补全 Rider ...
随机推荐
- C++ 队列!还是要从 STL 中的说起……
1. 前言 队列和栈一样,都是受限的数据结构. 队列遵循先进先出的存储原则,类似于一根水管,水从一端进入,再从另一端出去.进入的一端称为队尾,出去的一端称为队头. 队列有 2 个常规操作: 入队:进入 ...
- .net lambda表达式合并
事情的起因是公司一个小伙子问了我个问题 "海哥,来帮我看下这段代码怎么不行" Func<Report,bool> nameFilter = x=>x.Name = ...
- 齐博x2是什么?
齐博x2是什么? 齐博x2是齐博x1的延申版本. 对小程序全方位加强
- 动词时态=>1.动作的时间和状态
时态 什么是时态? 英语的时态,是由动作的时间 + 动作的状态:这俩一起构成了时态 动词的时间和状态在一起,合称时态 理论上的十六种时态 先将 时间和状态的概念搞清楚,再具体讨论,用什么词,去构成时态 ...
- 4.可视化API
模式视图(可浏览api界面) #导包 依赖coreapi from rest_framework.schemas import get_schema_view # 将get_schema_view视图 ...
- UE优化性能
UE 优化 参考:风恋残雪的博客 Stat unit 启动一个非Debug的游戏进程 打开控制台输入 Stat UNIT .PC端 ` , Android 四指点击 正常的渲染状态: 名称 功能 Fr ...
- 【题解】CF1714F Build a Tree and That Is It
题面传送门 解决思路 题目中虽然说是无根树,但我们可以钦定这棵树的根为节点 \(1\),方便构造,这是不 影响结果的. 以下记给定的三段长度为 \(a,b,c\). 先考虑无解的情况. 首先,给出的三 ...
- python进阶(28)import导入机制原理
前言 在Python中,一个.py文件代表一个Module.在Module中可以是任何的符合Python文件格式的Python脚本.了解Module导入机制大有用处. 1. Module组成 一个.p ...
- devexpress 中advBandedGridView内容自动换行和调整自适应行高
首先是自动换行,可以创建一个repositoryItemMemoEdit 并绑定到需要换行的列中 再设置一下repositoryItemMemoEdit高度自适应,这样子就完成了自动换行了 repos ...
- C温故补缺(四):GDB
gdb gdb是由GNU软件社区提供的C Debug工具 Pre 在调试前,需要先编译.c程序,且要加上-g使输出文件变得可调式 gcc test.c -g -o test 用gdb test来调试程 ...