国内文章

SQLSERVER的truncate和delete有区别吗?

https://mp.weixin.qq.com/s/wTIeW8rjj3cRzoaQcg2sOw

在面试中我相信有很多朋友会被问到 truncate 和 delete 有什么区别 ,这是一个很有意思的话题,本篇我就试着来回答一下,如果下次大家遇到这类问题,我的答案应该可以帮你成功度过吧。

一个用于访问 OpenAI GPT-3 API的 .NET SDK

https://mp.weixin.qq.com/s/91SBO2Z4ufnx0ry6X1uffQ

大家好,我是宝弟!今天给大家分享一个用于访问 OpenAI GPT-3 API的.NET SDK。此SDK包装了OpenAI原始的RestAPI。

一款使用Windows App SDK开发的小说阅读应用

https://mp.weixin.qq.com/s/Gv-Xc4sbD-4zS9JCjhVuMA

大家好,我是宝弟!今天给大家推荐一款使用Windows App SDK开发的小说阅读应用CleanReader(干净阅读),CleanReader是原生的Windows应用,支持Windows 11 系统。适合喜欢阅读网文,或者本地轻量阅读的用户。

.NET与大数据

https://mp.weixin.qq.com/s/32by2AB91JWKTeJclpKHZQ

当别人做大数据用Java、Python的时候,我使用.NET做大数据、数据挖掘,这确实是值得一说的事。写的并不全面,但都是实际工作中的内容。

.NET多播委托和事件看这篇文章就够了

https://mp.weixin.qq.com/s/4x7CN5p724X-1lmumomSdg

多播委托和事件在某种程度上是相似的,但是仍有一些重要的区别:定义:多播委托是一种特殊类型的委托,允许多个方法注册为对委托的响应者。而事件是一种通知机制,允许一个对象向外界发出通知,当特定事件发生时。

CA周记 - 用 .NET 启动你的 DJI Ryze Tello 无人机

https://mp.weixin.qq.com/s/9uUeA5-KP6X_OidLqrjpkw

大疆的 DJI Ryze Tello 是入门级的无人机,不仅在 STEM 教育中有非常广泛的应用,也可以作为编程入门的首选。通过 UDP 协议调用 DJI Ryze Tello SDK 可以让 DJI Ryze Tello 无人机执行起飞,降落,转向以及不同的花式动作。本文将会通过 .NET 创建应用控制 DJI Ryze Tello。

C#实现聊天消息渲染、图文混排(支持Windows、Linux)

https://www.cnblogs.com/zhuweisky/p/17095413.html

在实现聊天软件时,渲染文字表情图文混排是一项非常繁琐的工作,再加上还要支持GIF动图、引用消息、撤回消息、名片等不同样式的消息渲染时,就更加麻烦了。好在我们可以使用 ESFramework 提供的 IChatRender 组件,使用它我们就能轻松实现类似于微信聊天消息的渲染效果。IChatRender 支持 Windows、Linux(包括国产OS)。在Windows平台上提供了基于 WinForm 和基于 WPF 的实现,在Linux上则是基于.NET Core 实现的。

如何避免让线程摸鱼,请用异步技术 async await 拿捏他~

https://www.cnblogs.com/weixb/archive/2023/02/09/17104642.html

很多的Web框架,收到一个请求,就会创建一个线程来处理,如果片刻间内有100个用户请求这个方法,那么就得安排100个线程,

有没有方法让第1个线程在等待数据返回时,先去接待第N+1个用户(校验请求参数什么的)这样就能大大减少线程数量~

【.NET 8】ASP.NET Core计划 - 支持更完善的AOT发布

https://www.cnblogs.com/InCerry/archive/2023/02/08/Support-publishing-ASP-NET-Core-API-apps-with-Native-AOT.html

我们知道在.NET7.0中一个令人激动的特新就是支持了NativeAOT,我们可以通过NativeAOT生成本机程序,由于无需JIT编译,所以无需安装.NET Runtime,也进一步的提升了.程序的启动速度,降低了程序的体积,在客户端软件开发、ServerLess等场景会有不错的前景。

不用Blazor WebAssembly,开发在浏览器端编译和运行C#代码的网站

https://www.cnblogs.com/rupeng/archive/2023/02/10/17107662.html

本文中,我将会为大家分享一个如何用.NET技术开发“在浏览器端编译和运行C#代码的工具”,核心的技术就是用C#编写不依赖于Blazor框架的WebAssembly以及Roslyn技术。

.NET 团队 更新了 .NET 语言策略

2023年2月6日 ,.NET团队在官方博客上发布了.NET 语言策略的更新文章,具体参见 https://devblogs.microsoft.com/dotnet/update-to-the-dotnet-language-strategy/。微软在.NET平台上提供3种语言 - C#,F#和Visual Basic。新的 .NET 语言策略更新了这三者并把最新的文章更新在 Microsoft Learn 上发布 .NET 语言策略。

主题

【英文】更新.NET语言策略 - .NET Blog

https://devblogs.microsoft.com/dotnet/update-to-the-dotnet-language-strategy/

关于微软对 .NET 中语言的战略更新。

目前 .NET 中主要的三种语言是 C#、F# 和 Visual Basic,有关微软对这三种语言的战略的文件已经更新。

【英文】Windows App SDK的实验发布1.3实验版 - Windows应用程序 | Microsoft Learn

https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/experimental-channel#version-13-experimental-130-experimental1

Windows App SDK 1.3 Experimental-1已经发布。

这个版本引入了几个新功能,包括XAML Backdrop API(例如,将Mica应用于窗口背景),以及用于访问应用程序窗口的Window.AppWindow API。

【中文】Rider EAP版本现在支持中文语言包 | .NET工具博客

https://blog.jetbrains.com/zh-hans/dotnet/2023/02/07/introducing-the-rider-localization-eap-for-chinese-japanese-and-korean/

日语、中文和韩语的本地化语言包现在可用于JetBrains Rider 2023.1 EAP3。

一些本地化工作目前正在进行中,并通过IDE和YouTrack接受反馈。 该公司还表示,未来的目标包括将ReSharper本地化。

【英文】ReSharper结束Visual Studio 2010和2012的开发工作 | .NET工具博客

https://blog.jetbrains.com/dotnet/2023/02/10/ending-development-for-vs-2010-2012/

宣布ReSharper 2023.1及以后版本将不再积极支持Visual Studio 2010和2012。

安装程序集成选项将被保留,并不会立即不可用,但功能将不那么有保障,支持将被优先考虑。

文章、幻灯片等

【日文】快速制作图像分类应用的过程 - Qiita

https://qiita.com/SoeAtsu/items/4d22493c5dc8367162db

一篇关于在WPF和ML.NET中构建一个识别和分类图像的应用程序的文章。

【英文】SpecFlow - Cucumber in C#

https://daniel-delimata.medium.com/specflow-cucumber-in-c-e642c63469b2

如何使用SpecFlow、Cucumber在.NET中测试你的Web应用程序。

【英文】生成RequestDelegate的响应书写表达式:最小化API的幕后花絮-第六部分

https://andrewlock.net/behind-the-scenes-of-minimal-apis-6-generating-the-response-writing-expression/

本文在《极简API的幕后》系列中介绍了RequestDelegate如何生成输出响应的表达式(Expression)。

【日文】我想把Blazor中的验证逻辑组件化

https://zenn.dev/microsoft/articles/viewside-validation

如何以组件的形式将Blazor中的自定义验证逻辑组件化。

【日文】我想缩小Blazor中ValidationSummary显示的错误信息,如asp-validation-summary

https://zenn.dev/microsoft/articles/blazor-validationsummary-tips

如何在ValidationSummary组件中只显示与特定模型相关的错误,而不是所有属性。

【英文】.NET注释月刊|2023年2月|.NET工具博客

https://blog.jetbrains.com/dotnet/2023/02/08/net-annotated-monthly-february-2023/

JetBrains的2023年2月相关总结文章。

【日文】如何在C#服务器上取得配置文件 - Qiita

https://qiita.com/Shaula/items/177e8c16ec9b8b102c7a

如何使用dotnet-trace获得在服务器(如容器)上运行的.NET应用程序的跟踪。

【日文】用.NET探查IBM i数据库 - Qiita

https://qiita.com/tom_m_m/items/9481e8b619463ab9c20f

关于在IBM i(ppc64le架构)上从.NET应用程序访问Db2数据库的文章。

【英文】C# 提示:不要使用 nameof 来给常量一个值 - Code4IT

https://www.code4it.dev/csharptips/do-not-use-nameof-for-constants

观点:不建议在nameof中使用常量的名称,然后将其作为表名等使用,因为如果不慎改变,会破坏代码。

【英文】用Bogus生成样本数据

https://wildermuth.com/2023/01/29/generating-sample-data-with-bogus/

如何用Bogus生成假数据。

【英文】异步无效 - 如何驯服异步的噩梦 - Dev Leader

https://www.devleader.ca/2023/01/27/async-void-how-to-tame-the-asynchronous-nightmare/

关于async void的问题,以及如何在使用它作为事件处理程序时也能设法捕获异常等等。

【英文】必须遵守C规则,没有例外

https://ericsink.com/native_aot/no_exceptions.html

关于NativeAOT本地调用的方法不得抛出异常。

【英文】使用Visual Studio开发隧道来处理Twilio Webhooks

https://dev.to/twilio/use-visual-studio-dev-tunnels-to-handle-twilio-webhooks-58dc

如何使用Visual Studio开发隧道来处理Twilio webhooks。

【英文】计时的成本

https://ayende.com/blog/198977-B/the-cost-of-timing-out

关于在有大量并发执行的环境中,调用CancellationToken.CancelAfter进行超时处理会导致大量的Timer集。

RavenDB有一种方法,就是有周期性的定时器,并分批处理,以减少成本。

【英文】在没有Blazor WebAssembly的情况下,开发一个网站,在浏览器上编译和运行C#代码

https://yangzhongke8.medium.com/without-blazor-webassembly-develop-a-web-site-that-compiles-and-runs-c-code-on-browser-c381873f6d03

如何从JavaScript调用用WebAssembly构建的C#代码,而不使用Blazor WebAssembly的Blazor部分。

【英文】同步-异步场景下的性能测试

https://wapplegate.com/performance-testing/

所谓Sync-over-Async的性能,即异步方法的同步等待。

它总结了几个代码场景和结果,如延迟和RPS,取决于并行请求的数量。

开源库、存储库、工具等

drasticactions/MauiFeed: 跨平台 .NET Feed 阅读器。

https://github.com/drasticactions/MauiFeed

.NET MAUI 实现的 Feed 阅读器。

可以从 Microsoft Store 安装针对 Windows 的构建。

ForNeVeR/xaml-math: 一组 .NET 库,用于使用 LaTeX 排版风格渲染数学公式,适用于基于 WPF 和 Avalonia XAML 的框架。

https://github.com/ForNeVeR/xaml-math

用于在 WPF 和 Avalonia 中使用 LaTeX 风格渲染数学公式的库。

https://twitter.com/fvnever/status/1622750145958887424?s=12

LEGO/AsyncAPI.NET: AsyncAPI.NET SDK 包含了 .NET 中 AsyncAPI 文档的有用对象模型。

https://github.com/LEGO/AsyncAPI.NET/

用于读取 AsyncAPI(基于 OpenAPI 的事件驱动 API 版本)文档的库。

https://twitter.com/legoengineering/status/1623255496030388227?s=12

深入探索

[WIP] .NET 8 的 ASP.NET Core 路线图 · Issue #44984 · dotnet/aspnetcore

https://github.com/dotnet/aspnetcore/issues/44984

.NET 8 的 ASP.NET Core 路线图相关的问题。

HttpContent.ReadAsByteArrayAsync 中的过多分配 · Issue #81628 · dotnet/runtime

https://github.com/dotnet/runtime/issues/81628

HttpContent.ReadAsByteArrayAsync()相比HttpClient.GetByteArrayAsync()存在 4 倍的分配,是否过多。

实际上,HttpContent.ReadAsByteArrayAsync() 会因为可以多次读取而缓存或复制,因此如果要避免当前情况,最好使用 Stream 进行读取等。

推文

https://twitter.com/badamczewski01/status/1623788674558091265

什么是 .NET 中的 PGO(我很快就会再次谈论编译器,但它是为一家公司准备的,所以没有视频:/)

可以看到一开始生成的汇编代码比较低效,而且很长。经过PGO优化以后,代码变得非常高效。


https://twitter.com/Dave_DotNet/status/1623600088231874562

.NET 8 中即将推出的NativeAOT 大小改进(预览版 1) ... Linux 比原来小50%


https://twitter.com/okyrylchuk/status/1623079620307296260

EF 7 改进了字符串的转换。索引方法。 可以在下面比较 EF Core 6 和 EF 7 的 SQL 输出。

版权声明

由于笔者没有那么多时间对国内的一些文章进行整理,欢迎大家为《.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周报 【2月第2期 2023-02-11】的更多相关文章

  1. .NET周报 【2月第1期 2023-02-04】

    国内文章 .NET 入门到高级路线 https://www.cnblogs.com/hejiale010426/archive/2023/02/01/17083913.html 笔者介绍了.NET入门 ...

  2. .NET周报【1月第1期 2023-01-06】

    国内文章 [开源]基于.net6+gtksharp实现的Linux下的图形界面串口调试工具 https://www.cnblogs.com/flykai/p/17007554.html 由于公司的上位 ...

  3. .NET周报【1月第3期 2023-01-20】

    这应该是2023年农历新年前的最后一篇.NET周报,再次预祝大家新年快乐! 国内文章 看我是如何用C#编写一个小于8KB的贪吃蛇游戏的 https://www.cnblogs.com/InCerry/ ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. PHP 模仿表单提交

    function curl($url,$data,$headers){ $curl = curl_init(); // 启动一个CURL会话 curl_setopt($curl, CURLOPT_UR ...

  2. Window使用PowerShell改文件时间戳

    We cross infinity with every step; we meet eternity in every second. 我们每一步都跨过无穷,每一秒都遇见永恒. Window使用Po ...

  3. vcenter密码设置永不过期

    由于机房断电,原本的vcenter重启后web页面出现报错,为尽快恢复vcenter管理机,直接停用了旧的vcenter虚机,重新安装了一台vcenter,两个月后,页面开始报警密码即将到期: 经查阅 ...

  4. 剖析一下"抢茅台"脚本底层逻辑

    本文作者:梁东东 前言: 今天你撸茅台了么? 撸茅台已经成为社会现象,茶余饭后讨论的最佳实践 2022年双十一大促已经完美收官,兄弟姐妹克服种种困难与挑战.. 备战的会议室忙碌中带着紧张,当峰值过后的 ...

  5. c#对接每人计平台获取数据

    使用c#对接到晓舟科技的客流统计设备.那么需要先注册一个平台的账号 地址:http://mrd.meirenji.cn/login;JSESSIONID=323cbd18-29ed-4232-8c04 ...

  6. 关于linux fcitx输入法候选词中含有省略号的问题解决

    前言 这几天舍弃了 sogou 输入法,换上了google拼音输入法,因为我在纯文本终端调用中文输入法,搜狗显示出来的是加密的,候选词都是加密的,很烦这种 问题原因 这个问题主要是因为 云拼音 模块凉 ...

  7. DHorse的链路追踪

    目前,DHorse的链路追踪功能是通过SkyWalking来实现.实现原理是DHorse在部署应用时,通过指定SkyWalking的Agent来收集服务的调用链路信息.下面就来具体看一下DHorse如 ...

  8. 【小项目】微信定时推送天气预报Github项目使用及原理介绍-包含cron、天气预报、常用api

    一.资料链接 1.github地址 https://github.com/qq1534774766/wx-push 2.教程地址 https://blog.csdn.net/qq15347747/ar ...

  9. Velero 系列文章(二):使用 Helm 安装 Velero

    概述 本文是通过 Helm 3 来安装 Velero, 只做最基本的安装.并计划将 YAML (只备份 YAML, 不备份 Volume) 备份到腾讯云的 COS(兼容 S3, 所以可以通过 AWS ...

  10. 现代 CSS 高阶技巧,像 Canvas 一样自由绘图构建样式!

    在上一篇文章中 -- 现代 CSS 之高阶图片渐隐消失术,我们借助了 CSS @Property 及 CSS Mask 属性,成功的实现了这样一种图片渐变消失的效果: CodePen Demo -- ...