首页 > 其他分享 >.NET周报 【6月第3期 2023-06-18】

.NET周报 【6月第3期 2023-06-18】

时间:2023-06-21 09:44:09浏览次数:51  
标签:Core ASP 18 https 2023 NET com

国内文章

揭秘 Task.Wait

https://www.cnblogs.com/eventhorizon/p/17481757.html

Task.Wait 是 Task 的一个实例方法,用于等待 Task 完成,如果 Task 未完成,会阻塞当前线程。非必要情况下,不建议使用 Task.Wait,而应该使用 await。本文将基于 .NET 6 的源码来分析 Task.Wait 的实现,其他版本的实现也是类似的。

使用 C# 进行AI工程开发

https://www.zhihu.com/column/c_1648375724791808000

一直以来,官方口径都是尽量不要碰 CSharp 里的 unsafe 部分,以至于在大部分其它语言的程序员眼里,甚至 CSharp 程序员的眼里,CSharp 就是一个 Java,做做 CRUD,捣鼓捣鼓局限于 Windows 平台的 Winform 和 WPF 就行了。我觉得这种观念是不对的,东西做出来就是让人用的。准确看待一件事情,需要有一个大局观和整体观,而大局观和整体观,就避免不了去触碰 CSharp 里的 unsafe 部分。必须打开 unsafe,才能完整的理解 dotnet 和 CSharp。这里讲讲我的理解......

.NET源码解读kestrel服务器及创建HttpContext对象流程

https://www.cnblogs.com/Z7TS/p/17459777.html

.NET本身就是一个基于中间件(middleware)的框架,它通过一系列的中间件组件来处理HTTP请求和响应。因此,本篇文章主要描述从用户键入请求到服务器响应的大致流程,并深入探讨.NET通过kestrel将HTTP报文转换为HttpContext对象。通过本文,您可以了解以下内容:

  • http的数据流转流程
  • 源码解读kestrel服务器的运作流程及生成HttpContext对象

记一次 .NET 某药材管理系统 卡死分析

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

前段时间有位朋友找到我,说他们在查询报表的时候发现程序的稳定性会受到影响,但服务器的内存,CPU都是正常的,让我帮忙看下怎么回事,问了下程序的稳定性指的是什么?指的是卡死,那既然是卡死,就抓一个卡死的dump吧。

.net 项目静态文件自动压缩打包

https://www.cnblogs.com/newton/p/17451112.html

在 ASP.NET MVC 时代,我们常使用 BundleCollection 设置需要打包压缩的 js 和 css 文件,运行时框架会自动处理打包压缩过程并将最终结果传入响应。ASP.NET Core 开始,不再提供内置的打包压缩组件,官方推荐 WebOptimizer 替代使用。

全面的ASP.NET Core Blazor简介和快速入门

https://www.cnblogs.com/Can-daydayup/p/17157143.html

因为咱们的MongoDB入门到实战教程Web端准备使用Blazor来作为前端展示UI,本篇文章主要是介绍Blazor是一个怎样的Web UI框架,其优势和特点在哪?并带你快速入门上手ASP.NET Core Blazor(当然这个前提是你要有一定的C#编程基础的情况,假如你完全没有接触过C#的话建议你先从基本语法学起)。

ASP.NET Core 6框架揭秘实例演示[38]:两种不同的限流策略

https://www.cnblogs.com/artech/p/inside-asp-net-core-6-38.html

承载ASP.NET应用的服务器资源总是有限的,短时间内涌入过多的请求可能会瞬间耗尽可用资源并导致宕机。为了解决这个问题,我们需要在服务端设置一个阀门将并发处理的请求数量限制在一个可控的范围,即使会导致请求的延迟响应,在极端的情况会还不得不放弃一些请求。ASP.NET应用的流量限制是通过ConcurrencyLimiterMiddleware中间件实现的。(本文提供的示例演示已经同步到《ASP.NET Core 6框架揭秘-实例演示版》)

浅聊一下 C#程序的 内存映射文件 玩法

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

前段时间训练营里有朋友问 内存映射文件 是怎么玩的?说实话这东西理论我相信很多朋友都知道,就是将文件映射到进程的虚拟地址,说起来很容易,那如何让大家眼见为实呢?可能会难倒很多人,所以这篇我以自己的认知尝试让大家眼见为实。

ASP.NET Core 6框架揭秘实例演示[37]:重定向的N种实现方式

https://www.cnblogs.com/artech/p/17472647.html

在HTTP的语义中,重定向一般指的是服务端通过返回一个状态码为3XX的响应促使客户端像另一个地址再次发起请求,本章将此称为“客户端重定向“。既然有客户端重定向,自然就有服务端重定向,本章所谓的服务端重定向指的是在服务端通过改变请求路径将请求导向另一个终结点。ASP.NET下的重定向是通过RewriteMiddleware中间件实现的。(本文提供的示例演示已经同步到《ASP.NET Core 6框架揭秘-实例演示版》)

如何洞察 C# 程序的 GDI 句柄泄露

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

前段时间有位朋友找到我,说他的程序界面操作起来很慢并且卡顿等一些不正常现象,从任务管理器看了下 GDI句柄 已经到 1w 了,一时也找不出什么代码中哪里有问题,让我帮忙看下,其实这种问题看内存dump作用不是很大,主要是写脚本很麻烦,这一篇我们就来简单聊聊如何洞察此类问题。

龙芯下如何进行.net core程序开发部署

https://www.cnblogs.com/silent2012/p/17474301.html

2022年4月,基础的运行时架构代码全部通过社区技术评审.NET国际开源社区正式宣布支持LoongArch(龙架构),目前LoongArch64架构已出现在.NET社区主干分支上。本文以.NETCore3.1在loongnix-server8.4下部署为例说明开发部署过程。

理解ASP.NET Core - 全球化&本地化&多语言(Globalization and Localization)

https://www.cnblogs.com/xiaoxiaotank/p/17466952.html

在众多知名品牌的网站中,比如微软官网、YouTube等,我们经常可以见到“切换页面语言”的功能,我们可以选择最适合的语言浏览页面内容。毫无疑问,为网站提供多种语言,页面内容本地化,大大扩展了受众范围,提升了用户体验。

.NET的基元类型包括哪些?Unmanaged和Blittable类型又是什么?

https://www.cnblogs.com/artech/p/basic-types.html

在讨论.NET的类型系统的时候,我们经常提到“基元类型(Primitive Type)”的概念,我发现很多人并没有真正理解基元类型就究竟包含哪些(比如很多人觉得字符串是基元类型)。除了明确界定基元类型外,本篇文章还会简单介绍额外两种关于类型的概念——Unmanaged类型和Blittable类型。

主题

宣布 .NET 8 Preview 5 - .NET 博客

https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-preview-5/

.NET 8 Preview 5 已经发布。

  • SDK:改进的指标 API
    • 依赖注入 (DI) 友好的指标 API
    • 创建标记的仪表和仪器
  • SDK:源链接现在是 .NET SDK 的一部分
  • SDK:新的 .NET 库分析器
  • SDK:Linux 上的独立构建
  • SDK:非默认自包含
  • Alpine ASP.NET Core Docker 复合图像
    • 使用新的 Ready-to-Run 格式编译 ASP.NET Core,将程序集组合成单个二进制文件(复合)以减小大小等,但失去了处理多个版本的能力。
  • 运行时主机默认不使用 RID 图来确定特定于 RID 的资产
  • 代码生成
    • 默认动态 PGO
    • 优化GC类型的ThreadStatic字段访问
    • Arm64,AVX-512
  • C# Dev Kit 扩展并提高了 VSCode 的工作效率

Visual Studio 2022 17.7 Preview 2 来了!- Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-7-preview-2-is-here/

Visual Studio 2022 17.7 Preview 2 已经发布。

  • IDE 生产力和性能
    • 改进的文件比较
    • 创建拉取请求
    • 增强的多分支图支持
    • 并行堆栈过滤
    • 提高 F5 速度
    • 编辑速度优化
  • .NET 开发
    • 自动反编译外部 .NET 代码
    • 新的 CPU 利用率自动化洞察
  • 现代 C++ 和游戏开发
    • 为 C++ 构建洞察力
    • 虚幻引擎蓝图查找所有参考资料
    • 增强的 Doxygen 过载解析
  • C++跨平台及嵌入式开发
    • 远程文件更新
    • WSL自动获取
  • JavaScript 和 TypeScript 开发
    • Vite 新项目创建支持 React 和 Vue
  • 企业管理
    • 标准用户的 Visual Studio 更新和更新
    • 管理员将私有布局添加到安装程序的“可用”选项卡

.NET 8 Preview 5 中的 ASP.NET Core 更新 - .NET 博客

https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-dotnet-8-preview-5/

.NET 8 Preview 5 中对 ASP.NET Core 的更新。

  • 改进了 ASP.NET Core 调试体验
    • HttpContext、HttpRequest、HttpRequest、ClaimsPrincipal 上的 DebuggerDisplay 属性
  • 服务器和中间件
    • IHttpSysRequestTimingFeature
    • ITlsHandshakeFeature 中的 SNI 主机名
    • IExceptionHandler
    • Blazor
    • 新的 Blazor Web 应用程序项目模板
    • 与 Blazor 路由器端点路由集成
    • 为 Blazor Server 的各个组件启用交互
    • 增强的 Webcil 包
    • Blazor 内容安全策略 (CSP) 兼容性
  • API创作
    • 支持通用属性
    • SignalR
    • SignalR 无缝重新连接
    • 原生AOT
    • 支持 AsParameters 和编译时最小 API 的自动元数据生成
  • 身份验证和授权
    • 更新了 ASP.NET Core SPA 模板的身份验证
    • 推荐使用 AuthorizationBuilder 的新分析器

在 .NET 8 Preview 5 中宣布 .NET MAUI - .NET 博客

https://devblogs.microsoft.com/dotnet/announcing-dotnet-maui-in-dotnet-8-preview-5/

.NET 8 Preview 5 中对 .NET MAUI 的更新。

  • iOS键盘滚动
  • 增强测试
  • 改进的性能
  • 错误修复

发布 8.0.0-alpha.1 App-vNext/Polly GitHub

https://github.com/App-vNext/Polly/releases/tag/8.0.0-alpha.1

Polly 8.0.0-alpha.1 已经发布。

Polly v8 对 API 进行了重大更改,并以更少的开销构建在新的 API 上。此版本是其第一个预览版本。

.NET Framework 的 2023 年 6 月安全修复程序和累积更新已发布。

此版本包含 6 个安全修复和多个错误修复。

  • CVE-2023-24897:远程代码执行(PDB 导致 MSDIA SDK 堆溢出)
  • CVE-2023-29326:远程代码执行(WPF BAML 权限提升)
  • CVE-2023-24895:远程代码执行(WPF XAML 解析器漏洞)
  • CVE-2023-24936:权限提升(DataSet 和 DataTable XML 反序列化漏洞)
  • CVE-2023-24936:拒绝服务(AIA 客户端证书获取过程漏洞)
  • CVE-2023-29330:拒绝服务(X509Certificate2 文件文件处理漏洞)

.NET 2023 年 6 月更新 – .NET 7.0.7、.NET 6.0.18 - .NET 博客

https://devblogs.microsoft.com/dotnet/june-2023-updates/

.NET 7.0.7、6.0.18 已经发布。

此版本包含各种安全修复和一些错误修复以及质量增强修复。

  • CVE-2023-24895:远程代码执行(XAML 框架元素处理漏洞)
  • CVE-2023-24897:远程代码执行(PDB 导致 MSDIA SDK 堆溢出)
  • CVE-2023-24936:权限提升(DataSet 和 DataTable XML 反序列化漏洞)
  • CVE-2023-29330:拒绝服务(X509Certificate2 文件文件处理漏洞)
  • CVE-2023-29337:NuGet 客户端远程代码执行(竞争条件符号可利用漏洞)
  • CVE-2023-32032:拒绝服务(Tar 文件提取漏洞)
  • CVE-2023-33126:拒绝服务(崩溃和堆栈跟踪场景中的漏洞)
  • CVE-2023-33128:拒绝服务(P/Invoke Source Generator 生成的代码内存释放漏洞)
  • CVE-2023-33135:拒绝服务(.NET SDK 工具恢复权限提升漏洞)

介绍 CreatorKit - ServiceStack

https://servicestack.net/posts/creatorkit

CreatorKit 是在 .NET 中实现的 Mailchimp 的自托管替代方案,现已发布。

您可以管理邮寄列表和时事通讯订阅、发送可定制的电子邮件,并获得一套完整的工具,包括管理仪表板。

它是 ServiceStack 的一部分,对个人和开源项目免费。

发布 2.6.116 StackExchange/StackExchange.Redis

https://github.com/StackExchange/StackExchange.Redis/releases/tag/2.6.116

StackExchange.Redis 2.6.116 已经发布。

它包括针对本机 AOT 支持的错误修复和更新。

Blazor Essentials – 新指南教程 | .NET 工具博客

https://blog.jetbrains.com/dotnet/2023/06/13/blazor-essentials-new-guide-tutorial/

JetBrains 的 Blazor 介绍指南现已推出。

涵盖 Blazor,从实现表单、与 JavaScript 互操作和发布。

将 .NET Framework 4.8.1 发布到发布预览频道

https://blogs.windows.com/windows-insider/2023/06/13/releasing-net-framework-4-8-1-to-the-release-preview-channel/

.NET Framework 4.8.1 已发布到 Windows Insiders 的 Release Preview 频道。

已交付至适用于 Windows 11 21H2、Windows 10 21H2、22H2 的 Insider Preview Release Preview 频道。

.NET Framework 4.8.1 包括 Arm64 架构支持、辅助功能改进等。

Rider 2023.2 EAP 5:改进了对 C# 的支持、更好的性能分析等。| .NET 工具博客

https://blog.jetbrains.com/dotnet/2023/06/16/rider-2023-2-eap-5/

Rider 2023.2 EAP 5 已经发布。

该版本包括对 lambda 默认参数的支持、改进的 Disposable 检查、终端 WinPTY 到 ConPTY 的迁移、按线程分组的 dotTrace 显示等。

ReSharper 2023.2 EAP 5:改进了对对象处置的控制,支持默认 Lambda 参数和 C++23 标准库模块。| .NET 工具博客

https://blog.jetbrains.com/dotnet/2023/06/16/resharper-2023-2-eap-5/

ReSharper 2023.2 EAP 5 已经发布。

此版本包括对 lambda 默认参数的支持、改进的 Disposable 检查、C++ 中的 C++23 标准库支持、按线程显示分组的 dotTrace 等。

在 Discord 上引入 Microsoft Store 频道 - #ifdef Windows

https://devblogs.microsoft.com/ifdef-windows/introducing-the-microsoft-store-channel-on-discord/#microsoft-store

频道已在 Discord 上开通。

此频道位于 UWP 社区服务器上,可让你讨论与 Microsoft Store 应用和站点、合作伙伴中心、MSIX 程序包和安装程序相关的主题。

您可以在社区中进行讨论并与 Microsoft 团队互动。

发布 v1.0 Windows 地图:介绍适用于 Windows CommunityToolkit/Maui 的地图控件

https://github.com/CommunityToolkit/Maui/releases/tag/1.0.0-maps

.NET MAUI Community Toolkit 发布了适用于 Windows 的地图控件。

由于 Windows 没有将地图作为平台功能,并且不支持 .NET MAUI 的地图控件,因此 Bing 提供了一个托管在 WebView2 中的地图控件作为社区实现。

公共预览版:.NET 8 的应用服务支持 | Azure 更新 | Microsoft Azure

https://azure.microsoft.com/en-us/updates/public-preview-app-service-support-for-net-8/

宣布在 Azure 应用服务上抢先体验 .NET 8。

Azure 应用服务(Windows 和 Linux)上 .NET 8 的早期访问可用性。

使用 Microsoft Endpoint Manager (Intune) 配置 Visual Studio 策略 - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/configure-visual-studio-policies-using-microsoft-endpoint-manager-intune/

将 Visual Studio 全局策略添加到 Microsoft Endpoint Manager (Intune) 设置目录。

这允许从 Intune 部署 Visual Studio 配置选项,以前需要手动 ADMX 上传直接从 Intune 进行管理。

文章、幻灯片等

ASP.NET(.NET Framework)各个Session State Provider的大规模更新-Shibayan Miscellaneous

https://blog.shibayan.jp/entry/20230618/1687080471

ASP.NET (.NET Framework) 的会话状态提供程序更新摘要。

有一些使用SQL Server、Cosmos DB和Redis作为ASP.NET的Session State Provider,他们详细解释了今年更新的要点。

【VSCode、C#、AWS Lambda】在本地查看C#创建的Lambda Function的运行-Qiita

https://qiita.com/shin4488/items/a01fdf54daf626cb8742

关于如何在本地 Visual Studio Code 中检查在 .NET 中实现的 AWS Lambda 函数的运行情况。

在本地运行大型语言模型——你自己的 C# 类 ChatGPT AI

https://dev.to/maartenba/running-large-language-models-locally-your-own-chatgpt-like-ai-in-c-jco

如何使用 LLamaSharp 在您的本地环境中像 ChatGPT 一样与 LLM 实现 AI 聊天。

将 F# 编译为 Rust

标签:Core,ASP,18,https,2023,NET,com
From: https://www.cnblogs.com/InCerry/p/dotnet_week_23_6_3.html

相关文章

  • Gobinet和QMI-WWAN
    高通Gobi无线宽带芯片技术,只需一个模块即可支持多种移动宽带网络QMI是QualcomMessageInterface的简称,Gobinet和QMI-WWAN的作用是一样的都是Linux上高通模块的驱动程序,分界线就是linux3.4内核,之前高通的QMI-WWAN并没有添加到linux内核中,所以高通就开发了Gobinet软件包,包括4G......
  • PROFINET设备描述文件GSD文件说讲之一
    GSD文件名规范GSD目前版本是2.4,规定文件名中应该包含一个时间戳,比如GSDML-V2.35-Vendor-Device-20171231.xml或-20171231-235900.xml。GSD文件的结构在IO控制器眼里,IO设备都是一个德性,大致轮廓无非是Header和Body,正应了那句歌词:“一朝出了武门口,一个名字两只手”。ISO15745Pro......
  • 2023-06-20 [微信小程序开发者工具] ? Enable IDE Service (y/N) 
    前言:小程序代码运行在新电脑,连hbuilderx和微信开发者工具都是新的,报错:[微信小程序开发者工具]?EnableIDEService(y/N)。原因:hbuilderx无法启动微信开发者工具,再具体点是因为微信开发者工具的服务端口号没有打开。解决方案:打开微信开发者工具,找到【设置】==》【安......
  • CF1810G The Maximum Prefix
    经典套路。题意你将随机生成一个长度为\(k\)的数组\(a\),其中\(a_i\)有\(p_i\)概率为\(1\),否则为\(-1\)。定义其前缀和数组\(s_i=\sum\limits_{j=1}^{i}a_j,i\in[0,k]\)。如果前缀和数组的最大值为\(t(t\in[0,k])\)那么你将获得\(h_t\)的权值。给定数组......
  • CF896E/洛谷 P4117 [Ynoi2018]五彩斑斓的世界/Welcome home, Chtholly
    分块。我们先来考虑修改对整块的影响。记值域为\(V=10^5\)。考虑对每一块维护\(V\)个集合\(S_1,S_2,\cdots,S_V\),第\(i\)个集合\(S_i\)维护了区间中所有\(=i\)的元素的一些信息,并维护区间的最大值\(m\),对于一次操作\(x\):若\(m\le2x\),我们暴力对每个\(i\in[x+1,......
  • 2023-06-20:给定一个长度为N的数组arr,arr[i]表示宝石的价值 你在某天遇到X价值的宝石, X
    2023-06-20:给定一个长度为N的数组arr,arr[i]表示宝石的价值你在某天遇到X价值的宝石,X价值如果是所有剩余宝石价值中的最小值,你会将该宝石送人X价值如果不是所有剩余宝石价值中的最小值,你会将该宝石放到所有宝石的最后返回把宝石都送人需要多少天比如arr=[3,1,4,3,1,2]在第1......
  • 2023-06-20:给定一个长度为N的数组arr,arr[i]表示宝石的价值 你在某天遇到X价值的宝石, X
    2023-06-20:给定一个长度为N的数组arr,arr[i]表示宝石的价值你在某天遇到X价值的宝石,X价值如果是所有剩余宝石价值中的最小值,你会将该宝石送人X价值如果不是所有剩余宝石价值中的最小值,你会将该宝石放到所有宝石的最后返回把宝石都送人需要多少天比如arr=[3,1,4,3,1,2]在第1天,你遇......
  • 2023-06-20 hexo博客 运行报错:Cannot find module 'hexo' from 'D:\ablog' 提示要rm
    前言:把博客拉到到新电脑,运行hexos报错如下:PSD:\ablog>hexosERRORCannotfindmodule'hexo'from'D:\ablog'ERRORLocalhexoloadingfailedinD:\ablogERRORTryrunning:'rm-rfnode_modules&&npminstall--force'原因:没有装......
  • nethogs 源码分析
    nethogs源码分析这篇文章属于初步分析,以后有时间的话再写的更细点。以下内容都是针对的TCP流量分析。编译debug模式下编译,方便后面调试。CXXFLAGS='-g-O0-std=c++11-Wall-Werror'CFLAGS='-g-O0-Wall-Werror'make总体设计利用libpcap获取特定网卡上的数据......
  • Springboot web,三层架构, IOC&DI 使用总结2023
    Springbootweb,三层架构,IOC&DI使用总结2023一.spring.io全家桶springbootspringframework基础框架,配置繁琐,入门难度大--》springbootspringcloudspringsecurityspringdataspring发展到今天是一个生态圈,提供了若干个子项目,每个子项目用于完成特定的功能。二.sp......