.NET周刊【6月第1期 2024-06-02】

news2024/11/18 21:46:43

国内文章

一文带你了解.NET能做什么?

https://www.cnblogs.com/Can-daydayup/p/18214473

.NET是一个免费、开源、跨平台的开发平台框架,广泛应用于桌面、Web、移动、云服务、游戏、物联网、大数据和人工智能等领域开发。它支持C#、Visual Basic、F#等多种编程语言,其中C#最为常用,通过提供全栈开发支持、安全代码优先等设计亮点,促进了开发人员的工作效率。本文除介绍.NET各领域应用外,还推荐了多个有关它的学习资源和工具,有助于开发者掌握和应用.NET技术。

Gradio.NET是什么,怎么用以及工作原理

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

文章介绍了Gradio.NET,一个允许.NET开发者无需前端经验即可创建专业Web应用的开源框架。它基于Python库Gradio,使得构建和部署交互式Web界面变得简单。Gradio.NET适合快速展示机器学习模型或其他功能的场景。文章还详细说明了如何使用Gradio.NET,包括创建项目、安装NuGet包,以及编写少量代码来启动应用。最后,它强调了Gradio.NET社区的价值,鼓励.NET开发者加入并贡献。

记一次 .NET某工控WPF程序被人恶搞的 卡死分析

https://www.cnblogs.com/huangxincheng/p/18217252

本文讲述了作者分析窗体程序卡死问题的经历。作者表示分析dump是免费的,但不希望别人滥用其时间。通过WinDbg工具分析,作者找到主线程在等待一个事件时卡死了。具体来说,是在处理GetMessageW获取的消息时,主线程被coreclr的WaitSuspendEventsHelper方法阻塞,等待一个事件。作者还展示了该方法的源码,其中用到了InterlockedCompareExchange函数保证状态更新的原子性。

记一次 .NET某企业数字化平台 崩溃分析

https://www.cnblogs.com/huangxincheng/p/18215055

文章描述了如何使用WinDbg工具分析软件崩溃问题,通过查看dump文件来定位和分析发生栈溢出的异常。文中演示了如何判断栈溢出、查看栈的界限和哨兵页,并解释了在.NET环境下,如何通过源码将Win32的STACK_OVERFLOW异常映射为.NET的StackOverflowException异常。最后,通过查看调用栈来尝试定位导致异常的代码。

.NET 6+Semantic Kernel快速接入OpenAI接口

https://www.cnblogs.com/edisonchou/p/-/semantic_kernel_quick_start_demo

本文介绍如何在.NET6环境中利用Semantic Kernel SDK快速集成OpenAI,以创建一个简单的AIGC应用。文中提供了详细的步骤,包括创建.NET6控制台应用程序,配置appsettings.json,安装必要的NuGet包,以及编写代码用于配置及向LLM API发送请求。本文假设读者具有一定的开发背景,主要面向.NET开发者。

Visual Studio 智能代码插件:CodeGeeX

https://www.cnblogs.com/1312mn/p/18211377

CodeGeeX是一款为Visual Studio设计的免费智能编程助手,运用深度学习技术支持代码补全、错误检测、重构等,可无缝集成到多个IDE。它支持超过100种编程语言,具备代码生成、注释添加、智能问答、代码翻译等多功能。用户通过自动模式和交互模式使用CodeGeeX,在Visual Studio 2022安装插件后即可登录使用,提升编码效率。

【译】使用 .NET Aspire 和 Visual Studio 开发云原生应用

https://www.cnblogs.com/MeteorSeed/p/18221465

.NET Aspire 是一个为开发人员提供的简化 .NET 云原生应用程序构建和管理的框架和工具集。通过集成工具、模式和特殊的 NuGet 包,.NET Aspire 支持分布式应用程序开发,实现了自动配置,简化了部署过程,并内置了服务发现功能。可以通过 Visual Studio 或命令行安装 .NET Aspire,并使用 .NET Aspire 项目模板快速创建应用。它支持深度遥测与分布式跟踪,并简化了将应用程序部署到 Azure Container Apps 的流程,提高了开发效率。

分享5款.NET开源免费的Redis客户端组件库

https://www.cnblogs.com/Can-daydayup/p/18223341

大姚分享了5款.NET开源、免费的Redis客户端组件库,包括StackExchange.Redis、csredis、FreeRedis、NewLife.Redis和BeetleX.Redis,它们具有多节点支持、异步编程模型等特性。这些项目都收录在C#/.NET/.NET Core优秀项目和框架精选中,DotNetGuide技术社区为.NET开发者提供学习资料、技术分享和咨询等,旨在建立积极和谐的交流平台。

StackExchange.Redis跑起来,为什么这么溜?

https://www.cnblogs.com/bossma/p/18214702

StackExchange.Redis是一个在.NET环境下与Redis服务器高效通信的客户端库,支持多种Redis功能。文章通过分析StackExchange.Redis的同步和异步调用,阐述了它使用System.IO.Pipelines优化网络IO,采用生产者/消费者模式进行异步处理,实现高效率的数据交换和跨线程通信。同步API负责将操作封装成消息并发送至Redis,然后通过Monitor等待异步结果来同步线程行为。文章深入探讨了消息发送、结果获取及线程同步的具体实现。

微软在Microsoft Build 2024 上 发布了.NET 9 预览版4

https://www.cnblogs.com/shanyou/p/18214692

Microsoft Build 2024上,虽然.NET不是会议的中心议题,但微软依旧发布了一系列旨在提高.NET开发效率和便利性的新功能和工具。这些更新集中在.NET 9 Preview 4中,包括为提升性能和优化而增强的支持。主要改进了生成式人工智能应用、基于云的Web应用的构建体验。此外,微软也正式推出了.NET Aspire,旨在简化.NET的云原生开发。在Build2024会议中与.NET相关的实时会话包括C# 13.0、Entity Framework Core的MongoDB数据库驱动程序,以及ASP.NET Core 9.0与Blazor 9.0的讨论。

C#开发的应用升级更新服务器端工具 - 开源研究系列文章 - 个人小作品

https://www.cnblogs.com/lzhdim/p/18212987

笔者开发了一款名为LUAgent的应用升级管理器,主要解决每个应用都需要单独编写更新代码的问题。LUAgent侧重服务器端,能生成和上传升级更新文件,目前已开源。软件包括多个组成部分如主窗体、上传窗体和FTP操作类,支持添加应用名称、版本号、生成更新文件和上传至FTP。源码可在CSDN下载。客户端应用仍在开发中。

WPF使用事件聚合器,实现任意页面跨页通信

https://www.cnblogs.com/weskynet/p/18221240

本文介绍了如何使用prism框架里的事件聚合器在WPF应用中进行页面间消息传递,并给出了主页面打开对话框、消息发布与接收以及对话框参数接收的实现方法。作者还提供了一个示例,演示了如何传递消息参数,并验证了页面间通信的功能,详细代码可以通过作者公众号获取。

公众号5月C#/.NET热文一览

https://www.cnblogs.com/Can-daydayup/p/18216921

DotNetGuide是一个关于C#/.NET/.NET Core的学习、工作和面试指南知识库,该项目在GitHub上获得了5k+ Star并荣获C#中文Trending榜第一。文章内容包括.NET的应用范围、C#实现多线程的方式、.NET异步编程的实现方式、推荐的.NET定时任务调度框架、在ASP.NET Core Web中使用AutoMapper进行对象映射的方法、介绍.NET开源的AI和LLM相关项目框架、Garnet这款微软官方基于.NET高性能分布式缓存数据库,以及.NET图表库、WinForm UI控件库的介绍和dnSpyEx使用教程。

SQLServer如何监控阻塞会话

https://www.cnblogs.com/tianqing/p/18217020

文章介绍了如何在SQL Server数据库中查询阻塞会话及其根源,并展示了如何用C#编写程序来监控阻塞,定时终止根源会话并记录日志。第一部分通过SQL查询展示了如何查找被阻塞及阻塞会话的详细信息;第二部分提供了查询被阻塞会话的具体SQL文本的方法;第三部分则是C#程序代码,该程序可定期检查并处理数据库阻塞问题。

微服务新体验之Aspire初体验

https://www.cnblogs.com/shiningrise/p/18222147

文章介绍了如何在Visual Studio中安装并配置Aspire项目。首先确认Visual Studio的版本是否支持Aspire,若不支持需要更新至支持版本。然后演示了如何创建Aspire项目,并对项目配置文件进行了修改,以支持不安全传输。接着阐述了如何运行Aspire项目,并分析了项目各组件的关系和功能。前端项目AspireApp1.Web会调用后端AspireApp1_ApiService服务,通过HttpClient与后端服务进行通信,获取天气预报数据。

用.NET代码生成JSON Schema 验证器

https://www.cnblogs.com/dotnet-diagnostic/p/18224293

对于不熟悉JSON Schema的开发者,可以使用Lateapexearlyspeed.Json.Schema库的fluent schema builder模式来构建JSON Schema验证器。此接口设计允许开发者以“强类型”风格配置JSON验证规则,提高代码的安全性和可读性。支持多种验证方法,如IsJsonString、IsJsonNumber等,以及HasCustomValidation方法进行自定义验证。但使用扩展关键字的Build方法将不支持生成标准JSON Schema文本。

深入探讨Function Calling:在Semantic Kernel中的应用实践

https://www.cnblogs.com/ruipeng/p/18221666

本章节主要讲解了OpenAI的function calling如何在Semantic Kernel中应用。OpenAIPromptExecutionSettings中的ToolCallBehavior可以设置为EnableKernelFunctions或AutoInvokeKernelFunctions,前者需要显式发起函数调用请求,后者会自动处理函数调用。推荐使用OpenAI的最新模型以提高工具调用的性能。作者还展示了如何通过Azure OpenAI的服务结合自定义方法获取北京天气的实例,并解释了在开启EnableKernelFunctions时如何手动处理函数调用请求。

记一次 .NET某工业设计软件 崩溃分析

https://www.cnblogs.com/huangxincheng/p/18224311

一位朋友的软件出现崩溃,并抓取了dump文件。分析发现是ExecutionEngineException灾难性异常,原因是接口Stub调用失败,this指针为null。进一步分析clr源码发现问题出在VirtualCallStubManager对象为null,调用管理器无法正确解析调用站点的stub前缀。作者通过具体的代码段和汇编指令解释了问题的原因。

.NET开源、跨平台、使用简单的面部识别库

https://www.cnblogs.com/Can-daydayup/p/18226029

FaceRecognitionDotNet是一个.NET开源、免费、跨平台的面部识别库,它是Python人脸识别库face_recognition的C#移植版本,能够进行人脸检测和识别。它基于dlib和OpenCV开发,提供高级接口,适用于Windows、MacOS和Linux。同时,该项目已被收录到C#/.NET/.NET Core优秀项目和框架精选中,并且有一个面向.NET开发者的DotNetGuide技术社区。

微服务实践Aspire项目发布到远程k8s集群

https://www.cnblogs.com/shiningrise/p/18226058

Aspirate是用于将Aspire项目发布到k8s集群的工具。需要先安装Aspirate,然后在AppHost项目目录下进行初始化,生成aspirate.json配置文件,随后生成k8s配置文件和配置状态文件aspirate-state.json。接着进行构建操作,修改k8s的部署和服务配置文件,例如image的镜像文件地址,最后需要重新应用配置。还提供了如何将远程k8s集群增加至Win11本地的说明。

来自多彩世界的控制台——C#控制台输出彩色字符画

https://www.cnblogs.com/webenh/p/18216734

本文介绍了如何在C#中生成字符画,包括黑白和有限彩色两种方法。首先展示了黑白字符画的生成:加载图像、根据像素明度映射字符。接着尝试了利用Console.ForegroundColor和Colorful.Console库来增加颜色,但由于Windows控制台限制只能显示16种颜色,彩色字符画效果不佳。文章的最后作者表示不甘心,希望能找到全彩字符画的解决方案。

谁说爬虫只能Python?看我用C#快速简单实现爬虫开发和演示!

https://www.cnblogs.com/weskynet/p/18216738

文章介绍了如何使用C#结合HtmlAgilityPack库开发简单的网络爬虫,并演示了如何爬取文本、图片以及视频的基本方法。首先创建一个处理文本的函数将爬取的数据写入text.txt文件,在Main函数中调用相关方法进行操作。同时演示了图片数据的爬取方法和视频数据的爬取,虽然没有实际演示视频爬取,但提供了代码参考。

【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)

https://www.cnblogs.com/lulight/p/18219072

本文介绍了在Azure App Service中使用TLS/SSL证书的两种方法:通过文件和系统证书库。文中首先展示如何使用PowerShell创建自签名证书,并提供修改参数的选项。接着,给出了两段.NET代码,分别演示如何通过文件路径和指纹加载证书。文末指出,若通过指纹查找证书失败,需检查证书是否添加到App Service及配置参数,并在实验中通过API调用证明了方法的有效性。

XML Web 服务技术解析:WSDL 与 SOAP 原理、应用案例一览

https://www.cnblogs.com/xiaowange/p/18225328

XML Web服务是基于标准和协议(如WSDL、SOAP、RDF、RSS等)来发布、发现和使用网络应用程序组件的技术。WSDL用于描述Web服务的接口和操作,SOAP用于Web服务间通信的XML协议,RDF用于描述资源的属性和关系,RSS用于网站内容发布。XML Web服务的优势包括自描述性、开放协议支持、组件可重用性及促进现有软件系统间的连接。WSDL文档通过定义数据类型、消息、操作和端口类型等元素来描述Web服务。WSDL操作包括单向操作和请求-响应操作。

【OpenVINO™】在C#中使用 OpenVINO™ 部署 YOLOv10 模型实现目标

https://www.cnblogs.com/guojin-blogs/p/18215648

YOLOv10是YOLO家族新成员,特色是无NMS训练且在推理延迟和性能贡献上有显著提升。文章详述了用OpenVINO™ C# API部署YOLOv10模型的方法。OpenVINO™是英特尔的工具套件,2024年4月更新版本,加快了AI模型在多平台的推理速度,加强了模型压缩和性能改进。本文不仅介绍了YOLOv10模型的优点,还提供了C# API的下载链接和全部源码,帮助开发者在不同操作系统和硬件平台上使用C#实现模型部署和加速推理。

C#中接口的显式实现与隐式实现及其相关应用案例

https://www.cnblogs.com/TonyCode/p/18223431

C#中接口显式实现限制类直接调用方法,像“密封”类接口方法,增加调用成本。通过显式实现降低方法误用,子类重写抽象类中对应接口的默认行为,显式实现方法子类无法直接访问,降低递归调用风险。文章通过示例展示隐式和显式实现的区别,以及静态类扩展对接口方法访问修饰的应用。

【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Linux/Linux Container)

https://www.cnblogs.com/lulight/p/18225557

本文讲述在.NET 8环境下,应用如何在Linux系统或容器中读取SSL证书(X509),主要有两种方式。第一种将证书文件包含在源文件中,并直接通过相对路径读取;第二种上传证书至App Service Linux后,系统将证书保存于/var/ssl/文件夹中,可以通过SSH方式查看。文中提供了读取私有证书(.pfx)的.NET 8代码示例,并指出需要WEBSITE_LOAD_CERTIFICATES配置以及添加证书后需要重启站点才能在目录中看到证书文件。

使用 TestContainers 进行数据库集成测试

https://www.cnblogs.com/kklldog/p/18216903/TestContainers

TestContainers是一个开源工具,旨在简化集成测试中的容器管理,可以自动下载启动容器镜像,保证了测试的隔离性与可重复性,并能实现真实环境测试。用户通过API创建并启动容器实例,执行测试,最后销毁容器释放资源。本文使用PostgreSQL容器实例进行单元测试示例,展示如何使用TestContainers进行集成测试,并强调了其在搭建测试环境、保证测试质量方面的优势。

微服务实践k8s&dapr开发部署实验(3)订阅发布

https://www.cnblogs.com/shiningrise/p/18218164

文章介绍了在自托管模式下运行dapr的过程,包括创建订阅webapi项目、修改配置文件、使用Dapr进行发布与订阅,并且介绍了如何在k8s环境下部署。最终通过命令行和网页发布订阅的方式验证了整个流程。

oidc-client.js踩坑吐槽贴

https://www.cnblogs.com/tibos/p/18225177

这篇文章探讨了在使用vue2.0和.net core 6.0工作的环境中,将IdentityServer4认证授权基础框架的demo迁移到vue工程的挑战。作者因为前端技能限制和vue3的复杂性选择了vue2.0,并在迁移过程中遇到了PKCE(Proof Key for Code Exchange)不兼容的问题。文中还详细解释了PKCE的概念和作用,以及oidc-client.js停止维护带来的困扰和潜在解决方案,如关闭PKCE认证或直接取Localstorage中的code_verifier值。

Web Service和Web API理解和使用场景

https://www.cnblogs.com/dotnetw/p/18215365

Web Service是重量级的网络服务,使用SOAP和XML,适用于需安全性和事务处理的企业系统集成。Web API是基于HTTP的轻量级接口,多用JSON,便于快速开发和移动应用后端服务。具体选择取决于项目需求、安全性、性能和团队熟悉度等。

gRPC入门学习之旅(九)

https://www.cnblogs.com/chillsrc/p/18225606

这篇文章介绍了gRPC入门学习之旅的一些关键步骤,包括客户端的编译生成GRPC类、如何进行gRPC服务的https调用及解决相关错误。具体内容包括在Demo.Grpc.Common项目重新生成中生成GRPC类文件、通过Visual Studio 2022设置服务端监听端口和客户端请求地址、添加并编写User类以及MainWindow,以及删除项目中的Protos目录和添加项目引用解决依赖问题。

NET工控,上位机,Modbus485网口/串口通讯(鸣志步进电机,鸣志伺服电机,松下伺服电机,华庆军继电器模块)

https://www.cnblogs.com/Gao1234/p/18096175

文章介绍了两个Modbus帮助类,并重点讨论了在多线程环境下的一些问题。提供了不安全版的代码及实现串口和网口TCP连接的详细步骤。通过示例代码显示了如何设置串口参数并处理串口和TCP连接中的异常。

主题

Microsoft Build 2024:.NET 开发人员的基本会议 - .NET 博客

https://devblogs.microsoft.com/dotnet/catching-up-on-microsoft-build-2024-essential-sessions-for-dotnet-developers/

在 Build 2024 上为 .NET 开发人员介绍视频。

  • .NET 在 Microsoft Build 2024 - YouTube

发布版本 v2.63.0 · grpc/grpc-dotnet

https://github.com/grpc/grpc-dotnet/releases/tag/v2.63.0

grpc-dotnet v2.63.0 已发布。

此版本修复了内存泄漏和竞争条件等多个问题。

MAUI 版 LibVLCSharp 简介

https://dev.to/mfkl/introducing-libvlcsharp-for-maui-naj

发布 .NET MAUI 兼容版本的 LibVLCSharp。

此初始版本支持 Android 和 iOS,收到反馈后将考虑支持 WinUI。

引入 .NET API 文档源代码链接 - .NET 博客

https://devblogs.microsoft.com/dotnet/dotnet-docs-link-to-source-code/

已实现 learn.microsoft.com 上 .NET API 文档的源代码链接以及实现的幕后说明。

文章、幻灯片等

使用 podman 运行 .NET 测试容器

https://zenn.dev/k_maru/articles/testcontainersdotnet_podman

了解如何使用 Podman 而不是 Docker 来通过 Testcontainers for .NET 运行容器。

现代扩展管理器随 Visual Studio 17.10 一起到来 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/visual-studio-extension-manager-17-10/

介绍 Visual Studio 2022 17.10 中引入的新扩展管理器。

关于 JetBrains Rider 的 NuGet 支持您不知道的 9 件事 | .NET 工具博客

https://blog.jetbrains.com/dotnet/2024/05/29/9-things-you-didn-t-know-about-jetbrains-rider-s-nuget-support/

介绍有关 JetBrains Rider 中 NuGet 支持的 9 点。

工具窗口、包源代码控制、缓存管理、在 Assembly Explorer 中打开包、预发布复选框、Checkmarx 的安全性、查找依赖代码、在一处更新包、配置等。

初学者!使用 WPF 进行下一步!

https://zenn.dev/luxiar/articles/f25596cd1876a2

介绍将帮助您创建 WPF 应用程序的配置和技术。

为您的 C# 项目选择最佳的不可变字典

https://goatreview.com/choosing-best-immutable-dictionary-csharp-projects/

关于immutable Dictionary,比较解释了ReadOnlyDictionary、ImmutableDictionary、FrozenDictionary的性能和特点。

VisualStudio.Extensibility 17.10:使用诊断资源管理器调试扩展 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/visualstudio-extensibility-17-10/

17.10 中新的 Visual Studio 扩展性模型 VisualStudio.Extensibility 的新增功能。

使用诊断资源管理器进行调试,选择 XAML 资源、文件,跟踪项目查询的结果等等。

在 xUnit 单元测试中实现 ILogger 输出 - Qiita

https://qiita.com/higege-amdeker/items/4e2adfcc1b57628d2c71

如何使用 xUnit 将 ILogger 的输出输出到单元测试中的测试输出。

使用 Roslyn 分析器阻止主构造函数成员捕获

https://andrewlock.net/blocking-primary-constructor-member-capture-using-an-analyzer/

如何使用分析器阻止从 Roslyn.Diagnostics.Analyzers 捕获主构造函数或实现您自己的分析器。

在 Github Actions 中发布并查看 MSTest 测试结果

https://medium.com/@ma11hewtomas/publish-and-view-mstest-test-results-in-github-actions-35f11d97a259如何使用 .NET 的 CTRF 报告器和 github-actions-ctrf 将 MSTest 结果输出到 GitHub Actions 报告。

当作者不在时如何更新 NuGet 库 – The Reformed Programmer

https://www.thereformedprogrammer.net/how-to-update-a-nuget-library-once-the-author-isnt-available/

关于患有痴呆症的作者在他无法更新图书馆时做了什么,以使其他人能够更新图书馆。

.NET Aspire 正式发布!介绍介绍了 Aspire 的 Build 2024 会议

https://zenn.dev/jtechjapan_pub/articles/adf174ff96d3cb

介绍 Build 2024 上涵盖 .NET Aspire 的会议。

[C#] 异步处理和 async/await - Annulus Games

https://annulusgames.com/blog/async-await/

对.NET异步的解释,包括C#的async/await、cancel、IAsyncEnumerable等机制。

Avalonia UI:通过 FluentAvalonia 主题定制增强您的应用程序

https://medium.com/@faruk.akyapak/avalonia-ui-enhance-your-app-with- Fluentavalonia-theme-customization-0e8b9bdb4b16

了解如何为 Avalonia 自定义 FluentAvalonia 主题。

我想在 C# (.NET) 中将字节转换为 KB、MB、GB

https://zenn.dev/hirosukekayaba/articles/77d3ae2d90956a

将文件大小格式化为以 KB、MB、GB 等为单位的字符串的技术。

使用 dotnet-fullgc 触发您的 GC!

https://chnasarre.medium.com/trigger-your-gcs-with-dotnet-fullgc-c51bc3e364dc

了解工具以及如何实现它们以对从命令行运行的 .NET 进程执行 GC。

在.NET 8 中使用 Blazor 创建 WASM + gRPC 项目

https://zenn.dev/microsoft/articles/aspnetcore-blazor-dotnet8-wasm-with-grpc

了解如何在 .NET 8 的 Blazor WebAssembly 项目中使用 gRPC (Web) 进行通信。

Re:从零可观察性开始 - 尼诺的花园。

https://blog.neno.dev/entry/2024/05/25/164314

什么是 Observability、OpenTelemetry 的术语、如何在 C#/.NET 中使用它以及如何使用 Collectors。

ColorPalette 类中出现了公共构造函数!

https://zenn.dev/sayurin/articles/2700249955ee48

.NET 9 公开了 System.Drawing.Imaging.ColorPalette 类的构造函数。

这缓解了传统调色板在调查时难以处理的问题。

活动

Microsoft Build Japan (2024/06/27 10:00~)

https://msdevjp.connpass.com/event/320534/

使用 Blazor+ 低代码实现 .NET 资产现代化 (2024/07/04 13:30~)

https://codeer.connpass.com/event/319762/

网站、文档等

功能域建模 通过领域驱动设计和 F# 解决软件复杂性

https://www.kadokawa.co.jp/product/302405003608/

一本介绍使用函数式编程 F# 进行领域驱动开发的建模和构造方法的书。

版权声明

  • 国内板块由 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,欢迎大家加入。

image-20230703203249615

本文由博客一文多发平台 OpenWrite 发布!

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

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

相关文章

SSL代码签名最佳实践

代码签名就是软件发布者使用全球可信的证书颁发机构CA颁发的代码签名证书对软件代码进行签名,由此来验证软件开发者的真实身份,确保软件代码的完整性和可信任性。然而,攻击者一直试图渗透代码签名,意将恶意软件嵌入可信代码中。由…

finalshell刚连上就断,这个参数你注意到了吗

在实际应用中可能一不下心弄错一个参数就会让你的finalshell刚连上就断,如下图所示。 1、进入ssh目录下,修改ssh_config文件 2、修改UseDNS no,并把前面的#去掉。 注:如果在ssh_config文件见不到UseDNS yes ,可以打开sshd_config,他们是在…

视频怎么压缩变小?推荐三个压缩方法

视频怎么压缩变小?在数字时代,视频已成为我们日常生活和工作中不可或缺的一部分。然而,随着视频质量的提升,视频文件的大小也随之增加,这给存储和分享带来了不小的挑战。幸运的是,市面上有许多视频压缩软件…

Java学习笔记 集合的使用

在实际的项目中开发过程中,会有很多的对象,如何高效、方便的管理这些对象,是影响程序性能与可维护性的重要环节。在Java语言中为这个问题提供了一套完美的解决方案,也就是接下来要介绍的集合框架。 1.1 集合框架的结构 从Collect…

什么是 Batch Normalization 批标准化和全连接层

Batch Normalization 神经元在经过激活函数之后会处于饱和状态,无论后续怎么变化都不会再起作用。 每一层都会进行batch normalization的处理! without normalization 会导致数据分布再饱和区 全连接层: 全连接层(fully connected layers&a…

DPDK基础组件一(mbuf、ring、pktmbuf_pool)

一、rte_mbuf 此部分转自:https://zhuanlan.zhihu.com/p/616314276 1.mbuf结构 mbuf是报文中的描素的结构体,是整个转发过程中最核心的数据结构之一。主要针对于mbuf的常用API与基本原理做一个简单的介绍。 mbuf:报文内存存储结构,存储在mempool中mempool:使用环形缓冲…

【kubernetes】k8s集群中的ingress(对外服务)规则详解

目录 一、Ingress 简介 1.1service的作用 1.2外部访问方案 (四种)🌹🌹🌹 部署externalIPs 1.3Ingress 是什么 二、Ingress 组成🌹🌹🌹 三、Ingress 工作原理🐱&#x1f…

一维时间序列信号的小波时间散射变换(MATLAB 2021)

小波散射变换的目的在于获取第一层次的特征信息,即免疫平移、轻微形变的信息。而低通的滤波器能够获取输入信号的概貌,获取反映其整体大尺度特征的信息,以图像为例,由低通滤波器选取的信号对于图像的平移、伸缩、旋转等局部变化有…

【QT5】<总览二> QT信号槽、对象树及样式表

文章目录 前言 一、QT信号与槽 1. 信号槽连接模型 2. 信号槽介绍 3. 自定义信号槽 二、不使用UI文件编程 三、QT的对象树 四、添加资源文件 五、样式表的使用 六、QSS文件的使用 前言 承接【QT5】<总览一> QT环境搭建、快捷键及编程规范。若存…

计算机发展史 | 从起源到现代技术的演进

computer | Evolution from origins to modern technology 今天没有参考资料哈哈 PPT:(评论区?) 早期计算工具 算盘 -算盘是一种手动操作的计算辅助工具,起源于中国,迄今已有2600多年的历史,是…

告别鼠标:蓝牙无线安卓模拟鼠标,绘图板,手写板操作电脑PC端,卡卡罗特也说好,儿童节快乐

家人们,上链接了:https://download.csdn.net/download/jasonhongcn/89387887 横屏模式: 竖屏模式: 操作说明: 1. 手势滑动模拟鼠标移动 2. 界面如果有滚动条,右手指按紧,通过左手指移动实现…

智慧医疗新纪元:可视化医保管理引领未来

在数字化浪潮席卷全球的今天,我们的生活正在经历前所未有的变革。其中,智慧医保可视化管理系统就像一股清新的风,为医疗保障领域带来了全新的活力与可能。 想象一下,在繁忙的医院里,患者和家属不再需要为了查询医保信息…

适合航天航空的国产FTP替代软件

在宇宙探索的旅程中,航空和航天领域总是站在科技的最前沿,对数据传输的要求特别高。随着信息量急剧增加和安全威胁的复杂化,传统的FTP软件已经不能满足这个高端领域的需要了。因此,找到一款适合航空和航天领域的FTP替代软件&#…

SQLServer 查询指定数据库名和表名及表结构等

查询当前数据库中所有表名,不用指定数据库,选中某数据库直接执行SQL就好 -- U:所有用户表名; S:所有系统表名;V:所有视图表名 SELECT name FROM sysobjects WHERE xtypeU OR xtypeS OR xtypeV 查询指定数据库数据库中所有表名, SELECT TAB…

ad18学习笔记21:焊盘设置Paste Mask Expansion(锡膏层延伸)

在pcb上放置焊盘的时候,可以对焊盘进行设置,可以用默认的规则,可以用自定义的规则,网上很少看到自定义的规则怎么用。 参考了官方的说明文档,我只是稍微补充了一下 paste mask与solder mask有哪些区别_paste mask与s…

【30天精通Prometheus:一站式监控实战指南】第10天:blackbox_exporter从入门到实战:安装、配置详解与生产环境搭建指南,超详细

亲爱的读者们👋   欢迎加入【30天精通Prometheus】专栏!📚 在这里,我们将探索Prometheus的强大功能,并将其应用于实际监控中。这个专栏都将为你提供宝贵的实战经验。🚀   Prometheus是云原生和DevOps的…

isp效果库相关参数——镜像翻转

前言 之前一直比较忙着接触新工作内容,所以有一段搁置期,但是工作中的知识点还是有一直记录的,只是没空发出来,毕竟需要先熟悉才能总结内容,接下来的几天会连着发布 不同的产品数据手册有着不同的叫法但是统一的意思离…

怎么实现车间生产设备数据文件比传统FTP的精准快速管控?

在现代制造业中,数据管理的重要性日益凸显。车间生产设备产生的数据文件需要被精确、快速地管控,以确保生产效率和产品质量。传统上,文件传输协议(FTP)被广泛用于数据传输,但它存在一些明显的局限性。 传统…

三十七、openlayers官网示例Earthquakes Heatmap解析——在地图上加载热力图

官网demo地址: Earthquakes Heatmap 这篇主要介绍了热力图HeatmapLayer HeatmapLayer 是一个用于在地图上显示热力图的图层类型,通常用于表示地理数据中的密度或强度。例如,它可以用来显示地震、人口密度或其他空间数据的热点区域。在这个示…

2024050302-重学 Java 设计模式《实战享元模式》

重学 Java 设计模式:实战享元模式「基于Redis秒杀,提供活动与库存信息查询场景」 一、前言 程序员👨‍💻‍的上下文是什么? 很多时候一大部分编程开发的人员都只是关注于功能的实现,只要自己把这部分需求…