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

国内文章

.NET 7 的 AOT 到底能不能扛反编译?

https://www.cnblogs.com/huangxincheng/p/16917197.html

在 B 站,公众号上发了一篇 AOT 的文章后,没想到反响还是挺大的,都称赞这个东西能抗反编译,可以让破解难度极大提高,可能有很多朋友对逆向不了解,以为用 ILSpy,Reflector,DnSpy 这些工具打不开就觉得很安全,其实不然,在 OllyDbg,IDA,WinDBG 这些逆向工具面前一样是裸奔。

关于 .NET 在不同操作系统中 IO 文件路径拼接方法,升级 .NET 7 后注意到的一个知识点

https://www.cnblogs.com/berkerdong/p/16920239.html

.NET 现在支持跨平台这件事情已经是众所周知的特点了,虽然平台整体支持跨平台了,但是我们的代码如果真的想要实现跨平台运行其实还是有些小细节要注意的,今天想要记录分享的就是关于 文件 I/O 操作时路径的拼接问题。

.NET 性能优化-使用内存+磁盘混合缓存

https://www.cnblogs.com/InCerry/p/dotnet-opt-per-use-hybrid-cache.html

经过一段时间的研究,笔者实现了一个基于微软 FasterKv 封装的进程内混合缓存库(内存+磁盘),它有着更加易用的 API,接下来就和大家讨论讨论它。

你认识的 C# foreach 语法糖,真的是全部吗?

https://www.cnblogs.com/JulianHuang/p/16907679.html

本文的知识点其实由 golang 知名的 for 循环陷阱发散而来,对应到我的主力语言 C#, 其实牵涉到闭包、foreach。为了便于理解,我重新组织了语言,以倒叙结构行文。

从 .NET 6 更新到 .NET 7

https://mp.weixin.qq.com/s/94PKmYtcuKslTldrxXKiTg

.NET 7 已经发布了一段时间了,将几个服务升级到了 .NET 7,升级还是比较顺利的,也有遇到几个问题,分享一下。

MASA Framework 事件总线 - 跨进程事件总线

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

跨进程事件总线允许发布和订阅跨服务传输的消息, 服务的发布与订阅不在同一个进程中,在 MASA Framework 中, 跨进程总线事件提供了一个可以被开箱即用的程序。

Silky 微服务框架

https://github.com/liuhll/silky

在.NET 平台下的微服务应用开发框架,支持微服务场景的诸多特性,如服务治理、RPC 通信、链路跟踪、分布式事务等。

聊一聊如何截获 C# 程序产生的日志

https://mp.weixin.qq.com/s/5VtFnzuA8sKMNsBS9HhgEQ

前段时间分析了一个 dump,一顿操作之后,我希望用外力来阻止程序内部对某一个 com 组件的调用,对,就是想借助外力实现,如果用 windbg 的话,可以说非常轻松,但现实情况比较复杂,客户机没有 windbg,也不想加入任何的手工配置,希望全自动化来处理,看看我是如何实现的。

kotlin 的 suspend 对比 csharp 的 async&await

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

协程的出现大大降低了异步编程的复杂度,可以让我们像写同步代码一样去写异步代码,如果没有它,那么很多异步的代码都是需要靠回调函数来一层层嵌套,这个在我之前的一篇有介绍 rxjava 回调地狱-kotlin 协程来帮忙,本篇文章主要介绍:

  • kotlin 的 suspend 函数在编译生成了怎样的代码

  • csharp 的 async&await 在编译生成了怎么样的代码

  • 这两者相比较,引发怎样的思考

用最少的代码模拟 gRPC 四种消息交换模式

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

我们知道,建立在 HTTP2/3 之上的 gRPC 具有四种基本的通信模式或者消息交换模式(MEP:Message Exchange Pattern),即 Unary、Server Stream、Client Stream 和 Bidirectional Stream。本篇文章通过 4 个简单的实例演示它们在.NET 平台上的实现原理,源代码从这里查看。

C# 逆变的具体应用场景

https://mp.weixin.qq.com/s/6yVqPhj0V9P7g4XtwREpZg

早期在学习泛型的协变与逆变时,网上的文章讲解、例子算是能看懂,但关于逆变的具体应用场景这方面的知识,我并没有深刻的认识。

话题

.NET7 GRPC 性能表现亮眼

https://github.com/LesnyRumcajs/grpc_bench/discussions/310

2022 年 11 月 27 日 gcnyin 大佬提交了 grpc_bench 的框架升级的 PR(将各个语言的的版本都升级了),在预览测试结果中 dotnet_grpc 以14w/s的成绩取得了第一名。

9f6864c9dd36541fa3444ac61b888b92.png
image-20221130223058274

AppHarbor 正在关闭 - AppHarbor

https://blog.appharbor.com/2022/11/09/shutting-down-appharbor

.NET 应用程序托管服务 AppHabor 宣布,它将于 12 月 5 日关闭。(11 月 9 日)。

在该日期之后,所有的数据,包括网站、应用程序和数据库,都将不再能够被访问。

给婴儿看的 C

https://lp.jetbrains.com/csharp-for-babies/

JetBrains 的一本电子书,帮助婴儿了解 C#。

一本有插图的图画书,对 A 到 Z 的单词进行简单的解释。

JamesNK/Newtonsoft.Json 13.0.2 版发布

https://github.com/JamesNK/Newtonsoft.Json/releases/tag/13.0.2

Newtonsoft.Json(JSON.NET)13.0.2 已经发布。

这个版本有几个新功能和错误修正,包括支持 DateOnly 和 TimeOnly,以及增加了 UnixDateTimeConverter.AllowPreEpoch。

发布 ComputeSharp 2.0 - 通过 DirectX 12 和 D2D1 在 GPU 上轻松运行 C#!

https://sergiopedri.medium.com/announcing-computesharp-2-0-run-c-on-the-gpu-with-ease-through-directx-12-and-d2d1-be4f3f2312b4

ComputeSharp 2.0 已经发布。

2.0 已经进行了大量的重写,其特点是改变了源代码生成器而不是运行时代码生成器,许多新的 API,支持 D2D1 像素着色器,并引入了 XAML 控件,以便与 UWP 和 WinUI 3.1 整合。

这篇文章介绍了 ComputeSharp,它是如何工作的,以及它的部分内容,如 XAML 支持和 D2D1 像素着色器。

.NET MAUI 现在可以在 Visual Studio for Mac 17.4 中使用 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/net-maui-is-now-available-in-visual-studio-for-mac-17-4/

Visual Studio for Mac 17.4 中的.NET MAUI 支持已经发布。

类似于 Windows 上的 Visual Studio 的.NET MAUI 开发,现在可以使用。对 XCode 14.1 的支持将很快发布,C#热重载和 XAML 实时预览等功能将在未来实现。

Rider 2022.3 EAP 9

https://www.jetbrains.com/rider/nextversion/

https://twitter.com/jetbrainsrider/status/1596198425745391621?s=12

Rider 2022.3 EAP 9(早期访问预览)已经发布。

支持.NET 7 SDK(包括更新的项目模板、中央包管理和 C# 11),支持虚幻引擎 5.1,后端迁移到.NET 7 的性能改进,默认情况下的 UI 新的工具条 ,以及 C#中的机器学习代码完成。

258257fab5a1e5ea721eb4d7104f102a.png
image-20221130205657190

ReSharper 2022.3 EAP 9

https://www.jetbrains.com/resharper/nextversion/

https://twitter.com/resharper/status/1596198977795657729?s=12

ReSharper 2022.3 EAP 9(早期访问预览)已经发布。

该版本扩展了 EAP 8 对 ARM64 的支持,dotCover、dotTrace、dotMemory 和 ReSharper 命令行工具现在支持 ARM64。其他错误也得到了修复,在为正式发布做准备。

7f7d4262637c4c3144810b5969783a68.png
image-20221130205823618

文章、幻灯片

.NET 序列化综述 2022

https://aloiskraus.wordpress.com/2022/11/23/net-serialization-roundup-2022/

文章比较了.NET 中各种序列化器(二进制和 JSON)的序列化、反序列化和启动的性能。

利用 Web Live Preview 和 Telerik 提高你的生产力 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/improve-your-productivity-with-web-live-preview-and-telerik/

一篇关于 Web Live Preview 的介绍性文章,它在 Visual Studio 2022 中提供了 ASP.NET Web 表单的运行时预览。

这篇文章展示了如何启用和使用 Web Live Preview,以及它如何与第三方组件(如 Telerik 组件)集成。

C# 列表模式匹配的例子 | haacked.com

https://haacked.com/archive/2022/11/22/csharp-list-pattern/

一篇展示 C#11 列表模式的代码示例的文章。

.NET 7 删除了不安全的 XmlSecureResolver

https://www.infoq.com/news/2022/11/XmlSecureResolver/

关于 XmlSecureResolver 在.NET 7 中被删除的文章。

XmlSecureResolver 被推荐用来避免引用外部资源引起的 XXE,但它是基于代码访问安全(CAS)实现的,但由于.NET Core 没有 CAS,不再受限制,所以在.NET 7 中被删除。在.NET 7 中,它被废弃了。虽然该类型仍然存在,但在构建时打印了一个警告,在运行时引用该类型时引发了一个异常。

建议限制外部资源的行动是使用 XmlResolver.ThrowingResolver 而不是 XmlSecureResolver。

  • .NET 7 的颠覆性变化:XmlSecureResolver 已经过时了 - .NET | Microsoft 学习[1]

在 ASP.NET Core Razor Pages 中实现 IAsyncPageFilter - Qiita

https://qiita.com/gushwell/items/bcf39aaf708b9a483cf5

关于如何在 ASP.NET Core Razor Pages 中实现页面过滤的文章。

我想用 Azure AD 登录并调用 Blazor WASM -> ASP.NET Core WebAPI -> MS Graph API

https://zenn.dev/okazuki/articles/auth-blazorwasm-aspnetcore-obo

文章介绍了如何从登录 Azure AD 的 Blazor WebAssembly 应用程序中用 ASP.NET Core Web API 调用微软图形 API。

如何使用和构建一个流程(On-Behalf-Of flow),其中服务器应用程序调用 Graph API 而不是直接从客户端调用。

在 OptionsBuilder 中使用范围服务的危险和问题

https://andrewlock.net/the-dangers-and-gotchas-of-using-scoped-services-when-configuring-options-with-options-builder/

关于在使用 OptionsBuilder 构建配置时使用范围服务的危险和陷阱的文章。

.NET 7 为 Kubernetes 增加了积极的垃圾收集功能

https://www.infoq.com/news/2022/11/GCCollectionMode-Aggressive/

关于.NET 7 中引入的GCCollectionMode.Aggressive的文章。

"Aggressive "是一种模式,在用 "GC.Collect "执行 GC 时,尽可能多地释放内存。这对于诸如容器上的工作者有很长的空闲时间,并且在等待时使用很少的内存的情况很有用,在这种情况下,你不想完全关闭,但想在等待时保持低的资源使用率。

  • [API 建议]:让应用程序的作者告诉我们要空闲。

用 GitHub 动作构建和发布 Visual Studio 扩展程序

https://blog.elmah.io/build-and-publish-visual-studio-extensions-with-github-actions/

关于如何使用 GitHub Actions 构建和发布 Visual Studio 扩展(生成 VSIX 包)的文章。

在 Android 上运行 ASP.NET Core - Qiita

https://qiita.com/karuakun/items/c8439d0aadb2e798cf08

关于在 Android 上使用 Termux、运行 Ubuntu、安装.NET SDK 和运行 ASP.NET Core 应用程序的文章。

.NET 中的静态安全代码检查(Semgrep 版)

https://zenn.dev/masakura/articles/b84642b5bd680f

关于如何使用开源静态安全代码检查工具 Semgrep 来检查 C#代码的文章。

如何用 MagicOnion 发送和接收大型复杂数据对象 - Qiita

https://qiita.com/mxProject/items/838ef3e5e2856c66a29c

关于如何使用 MagicOnion 的流媒体发送和接收大型数据对象的文章。

令人困惑的.NET 反编译器:CallVirt OpCode

https://washi.dev/blog/posts/confusing-decompilers-with-callvirt/

关于不同的类型如果在虚拟函数表中具有相同的索引,就可以在 IL 的 CallVirt 中调用,而反编译器不能很好地处理的文章。

Lambda 冷启动 - .NET 7 Native AOT vs .NET 6 Managed Runtime | 没有教条的博客

https://nodogmablog.bryanhogan.net/2022/11/lambda-cold-starts-net-7-native-aot-vs-net-6-managed-runtime/

文章比较了 AWS Lambda 中.NET 7 Native AOT 和.NET 6 运行时的冷启动时间。

解析 "nettrace "事件流(不仅仅是)。

https://chnasarre.medium.com/parsing-the-nettrace-stream-of-not-only-events-8b95c7f82ec4

关于.NET 诊断协议的 "nettrace "流格式以及如何解析它的文章。

dotNETConf/2022/MainEvent/echnical at main - dotnet-presentations/dotNETConf - GitHub

https://github.com/dotnet-presentations/dotNETConf/tree/main/2022/MainEvent/Technical

.NET 会议 2022 年的幻灯片集。

从桌面浏览器或播放器中拦截声音数据,并以类似 Spearna 的方式显示出来 - Qiita

https://qiita.com/osamus/items/5093cefe20e8f817bbef

一篇文章总结了使用一个名为 BASS 的音频处理库实现类似 Spearna 的可视化器的关键点。

[C#]我想尝试使用 MemoryPack 7 - 一些样例

https://spacekey.dev/memorypack-7

关于实现一个应用程序的文章,该程序使用 MemoryPack 在 ASP.NET Core API 服务器和使用 Nuxt 的 Web 前端之间进行通信处理。

在.NET 8 新的使用 FOH 的集合类

https://steven-giesel.com/blogPost/34e0fd95-0b3f-40f2-ba2a-36d1d4eb5601

关于将在.NET 8 中引入的 FOH 的集合类的文章。

它介绍了 FOH 的集合类与现有的IReadOnlyList<T>和 Immutable 集合之间的区别,性能等。

从你的 Visual Studio 安装中删除不支持的组件 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/removing-out-of-support-components-from-your-visual-studio-installations/

描述从 Visual Studio 2022 17.4 安装中移除不支持的组件的能力的文章。

新的安装程序允许你一次性删除 Visual Studio 安装中不支持的组件,文章解释了如何做到这一点。

如果安装程序较新,这个删除功能可以对 Visual Studio 2022 的所有版本进行,甚至 Visual Studio 2019 和 2017 环境也可以通过安装 2022 安装程序来支持。

开源库、资源库、工具

MichalStrehovsky/PublishAotCompressed

https://github.com/MichalStrehovsky/PublishAotCompressed

https://twitter.com/MStrehovsky/status/1595941448326602752

MSBuild 的一个扩展包,在用 Native AOT 发布时,用 UPX 压缩可执行文件。

0940ea0bef3f300a04c82b87c6a29e86.png
image-20221130212147328

dhq-boiler/boilersE2E: 支持你的 E2E 测试

https://github.com/dhq-boiler/boilersE2E

一个用于 Windows 桌面应用程序的 E2E 测试的辅助程序库,包括 Windows 应用程序驱动程序的启动和关闭,带有超时的元素搜索等。

  • [C#]为.NET 桌面应用程序实现了一个 E2E 测试的库--Qiita[2]

kalk

https://kalk.dev/

一个为开发者提供的命令行计算器,可以进行各种计算、转换和硬件内联的计算。

ForNeVeR/AvaloniaRider: JetBrains Rider 插件用于 Avalonia 开发

https://github.com/ForNeVeR/AvaloniaRider/

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

用 Rider 支持 Avalonia 开发的插件。提供了预览和模板。

2ef1f330d4a4466b8c3145cd4ad37e91.png
image-20221130212427346

lowleveldesign/windbg-ext-template: 一个用于创建管理的 WinDbg 扩展的模板

https://github.com/lowleveldesign/windbg-ext-template

https://twitter.com/lowleveldesign/status/1596164757353922560?s=12

用 WinDbg 托管.NET 在托管代码中实现扩展函数的模板。

网站、文件等

Home | endoflife.date

https://endoflife.date/

一个汇编各种框架和产品的寿命终止日期的网站。

推文

https://twitter.com/dotnetfdn/status/1595427955076784133?s=12&t=EDTXeykhwoV--mTr9sPPxw

用于 ESP32-C3 的.NET nanoFramework 固件镜像已经发布,它说.NET 在 RISC-V 上运行。

8b6545e2887acd15760b0bfdb4549802.png
image-20221130212931756

Alexandre Mutel: "NativeAOT 的一个超级酷的功能与...." - Mastodon

https://mastodon.social/@xoofx/109423020409800983

.NET 7 的 NativeAOT 的一个超级酷的功能是 "直接调用 PInvoke",或者是链接静态库https://github.com/dotnet/runtime/blob/main/src/coreclr/nativeaot/docs/interop.md,直接调用函数的能力。在 NuGet 中没有内置的支持来分发这些东西(例如运行时文件夹),但可以很容易地发布一个包,提供动态库,但也可以提供对静态链接库的支持,并通过 MSBuild 目标自动注入它。我喜欢这个功能! 😎

.NET 7 的 NativeAOT 谈到了.NET 7 支持直接的 P/Invoke 调用和静态库链接的讨论。

  • runtime/interop.md at main · dotnet/runtime · GitHub[3]

版权声明

  • 国内板块由 InCerry 进行整理 : https://github.com/InCerryGit/WeekRef.NET/blob/master/input_zh-CN/2022/2022-11-30.md

  • 其余内容来自 Myuki WeekRef,由 InCerry 翻译(已获得授权) : https://github.com/mayuki/WeekRef.NET/blob/master/input/2022/2022-11-30.md

由于笔者没有那么多时间对国内的一些文章进行整理,欢迎大家为《.NET 周报-国内文章》板块进行贡献,需要推广自己的文章或者框架、开源项目可以下方的项目地址提交 Issue 或者在我的微信公众号私信。

格式如下:

  • 10~50 字左右的标题

  • 对应文章或项目网址访问链接

  • 200 字以内的简介,如果太长会影响阅读体验

https://github.com/InCerryGit/.NET-Weekly

参考资料

[1]

.NET 7的颠覆性变化:XmlSecureResolver已经过时了 - .NET | Microsoft 学习: https://learn.microsoft.com/ja-jp/dotnet/core/compatibility/xml/7.0/xmlsecureresolver-obsolete

[2]

[C#]为.NET桌面应用程序实现了一个E2E测试的库--Qiita: https://qiita.com/dhq_boiler/items/0a8e1352abd161be9a3c

[3]

runtime/interop.md at main · dotnet/runtime · GitHub: https://github.com/dotnet/runtime/blob/main/src/coreclr/nativeaot/docs/interop.md

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/280712.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HDU 5673 Robot 卡特兰数

题目链接&#xff1a; http://acm.hdu.edu.cn/showproblem.php?pid5673 题目描述&#xff1a; 一个人从原点开始向右走&#xff0c; 要求N秒后回到原点&#xff0c; 且过程中不能到负半轴&#xff0c; 人有两种操作&#xff0c; 走动或者停止&#xff0c; 问总共有多少种方案&…

删除本地账户无法登录电脑_如何从Windows的登录屏幕中删除本地用户帐户

删除本地账户无法登录电脑If you have multiple user accounts on your computer, you might find it annoying to have to click on the icon for your username each time you start up the computer. To remedy this problem, you can hide a user account with a registry …

tarjan算法详解

https://blog.csdn.net/jeryjeryjery/article/details/52829142?locationNum4&fps1 以防链接失效&#xff0c;特此转载此博&#xff0c;如有侵权请见谅 在有向图G中&#xff0c;如果两个顶点间至少存在一条路径&#xff0c;称两个顶点强连通(strongly connected)。如果有向…

Gitlab简单使用CI/CD

开篇语大概是去年就想做这个事情了&#xff0c;奈何当时卡到一个docker命令找不到的问题上&#xff0c;导致文章难产了&#xff0c;墨迹了这么久&#xff0c;终于又有空来捣鼓它了。目的我们要实现的目的是我本地不断提交代码(CI),然后服务器不断进行部署(CD)的一个简单流程。准…

免费的数字图书馆_不仅是书籍:您当地图书馆可能提供的所有免费数字资料

免费的数字图书馆You might think of libraries as old fashioned, or irrelevant in the age of the internet. You’d be wrong. 您可能会认为图书馆是老式的&#xff0c;或者与互联网时代无关。 你会错的。 Modern libraries offer books, yes, but they also provide inter…

iNeuOS工业互联网操作系统,脚本化实现设备运行时长和效率计算与统计

目 录1. 概述... 22. 实时采集开停状态... 23. 增加虚拟设备... 24. 脚本统计和计算设备运行时长... 45. 设备运行时长报表... 71. 概述有一个煤矿项目&#xff0c;使用iNeuOS系统时有一个需要是&#xff1a;要统计设备的运行时长&#xff0c…

C# 图片、文件等加入Project Resources

一、目的 1.编译后&#xff0c;只想有一个exe文件&#xff0c;不想外部文件引用&#xff0c;直接运行exe文件即可。 2.不会出现文件丢失情况。 二、操作 1.右击project ->properties->Resource&#xff0c;左上角选择Image&#xff08;或其他类型&#xff09; 2. 点击…

jfinal使用shiro注解大体流程

2019独角兽企业重金招聘Python工程师标准>>> 上一篇答题梳理了jfinal整合shiro的流程&#xff0c;jfinal读取shiro注解&#xff0c;这一篇将作为补充。 1.JFinalShiroPlugin作者为shiro的RequiresRoles&#xff0c;RequiresPermissions&#xff0c; RequiresAuthent…

chrome 快捷键取消_如何使用键盘快捷键在Chrome和Firefox中固定和取消固定选项卡...

chrome 快捷键取消If you tend to open a lot of tabs in your browser, it can become difficult to find the tabs with your most used websites. Pinning tabs in your browser moves those tabs to the left and shrinks the tabs to only show the favicon, and you can …

.NET Conf China 2022参会指南速览(内含超多福利)赶紧预约!⏰⏰⏰

12月充满惊喜各种美好节日纷至沓来似在奖励一年辛苦劳作的你12月的第一波福利.NET Conf China 承包啦立即扫码预约加入.NET年度盛宴抢12月第一波惊喜&#xff01;.NET Conf China 2022 .NET Conf China 2022是面向开发人员的社区峰会&#xff0c;延续 .NET Conf 2022 的活动&a…

​.Net 7 AOT 彻底解析下(完结篇)

楔子&#xff1a;本篇是承继前面三篇文章而来&#xff0c;分别为&#xff1a;.Net 7 的 AOT 和 CLR有什么区别&#xff1f;.Net 7 的 R2R,Crossgen2是什么?.Net 7 的AOT原理简析通过以上三篇的基础&#xff0c;本篇来彻底解析下AOT这门技术的底层原理。AOT此终&#xff0c;不再…

cmd暂停快捷键_是否有键盘快捷键可以暂停正在运行的CMD窗口的输出?

cmd暂停快捷键When running a batch script, you may need or want to pause the output in the CMD window so that you can look things over. Is there an easy way to pause, then restart the output? Today’s SuperUser Q&A post has the answer to help with a re…

在 Docker 中使用 flannel - 每天5分钟玩转 Docker 容器技术(60)

上一节我们安装和配置了 flannel&#xff0c;本节在 Docker 中使用 flannel。配置 Docker 连接 flannel编辑 host1 的 Docker 配置文件 /etc/systemd/system/docker.service&#xff0c;设置 --bip 和 --mtu。这两个参数的值必须与 /run/flannel/subnet.env 中 FLANNEL_SUBNET …

使用.NET7和C#11打造最快的序列化程序-以MemoryPack为例

译者注本文是一篇不可多得的好文&#xff0c;MemoryPack 的作者 neuecc 大佬通过本文解释了他是如何将序列化程序性能提升到极致的&#xff1b;其中从很多方面(可变长度、字符串、集合等)解释了一些性能优化的技巧&#xff0c;值得每一个开发人员学习&#xff0c;特别是框架的开…

永不丢失照片:防弹照片备份的完整指南

There’s nothing as precious and irreplaceable as your personal photos and, with a little forethought and planning, there’s no reason to ever feel the heartbreak of losing even a single one of them to theft, broken devices, or disaster. 没有比您的个人照片…

MySQL InnoDB存储引擎

呵呵哒。。。 MySQL体系结构和存储引擎 首先要搞懂的是什么是数据库&#xff0c;什么是数据库实例。 数据库&#xff1a;物理操作系统文件或其他形式文件类型的集合。 实例&#xff1a;MySQL数据库由后台线程以及一个共享内存区组成&#xff0c;实例才是真正对数据库进行操作的…

Blazor学习之旅 (8) MudBlazor组件库介绍

【Blazor】| 总结/Edison Zhou大家好&#xff0c;我是Edison。为了实现一个Web应用系统&#xff0c;需要有个看起来不丑的UI&#xff0c;而对于.NET程序员来说要做全栈开发还是有点难&#xff0c;而本篇介绍的这个UI组件库正好可以帮助我们解决这个问题&#xff01;MudBlaozr是…

棉花糖多少钱_如何在6.0棉花糖及更高版本中访问Android的正在运行的应用程序列表...

棉花糖多少钱In Android 5.x and below, accessing your list of running apps was simple—you’d jump into Settings > Apps > Running. Easy! In Android 6.0, however, Google moved this setting. It’s still not super difficult to find, but it’s a little tr…

C# 程序图标设置/winform 图标

一、目的、实际情况 1.编写一个winform 程序&#xff0c;发现有一个图标非常有意义。区分其他程序&#xff0c;以及感觉在做产品而不是写代码。 2.添加图标图片发现&#xff0c;需要用ico格式。在线转换&#xff08;某度搜索&#xff09;还是不靠谱。要微信登陆&#xff0c;登…

数字化转型,究竟在“转”什么?

这是头哥侃码的第265篇原创「头哥唠B唠」这个栏目已经持续了几个月了&#xff0c;没想到还在继续进行&#xff0c;并收获了很多朋友们的喜爱。非常感谢大家的支持&#xff01;在上次的直播中&#xff0c;我找来了我的老熟人们。一个是右军老师&#xff0c;之前 APISIX 的很多内…