本周由于Myuki大佬感染新冠,国际板块暂停更新一周,将在下周补齐,所以本周只有国内板块。
国内文章
解决 Blazor 中因标签换行导致的行内元素空隙问题
https://www.cnblogs.com/ElderJames/p/resolves-width-issues-in-blazor-caused-by-element-wrapping.html
实践过不同前端框架的朋友应该都知道,对于同一个样式,在不同框架上的表现都会有不同,时时需要做“适配”,在 Blazor 上也不例外。在做 Ant Design Blazor 时就深有体会,因为我们是同步官方的样式,他们的样式只考虑了React 上的实现,除非有人专门提 PR,否则都不会特别考虑其他框架的实现。本文就介绍一个典型问题。
使用 C# 进行AI工程开发-基础篇(五):文件数据库与向量数据库
https://zhuanlan.zhihu.com/p/649763690
数据库是数据存储和管理的重要基础设施,这里介绍下关系数据库之外的一些数据库,了解与掌握这些数据库,有助于人工智能应用的开发。本节主要介绍三个数据库:
LiteDB:纯 C# 实现的、简单易用的嵌入式数据库,快速开发的利器。当数据量不大的时候,直接使用 litedb,简单粗暴。
RocksDB:经过业界检验的 kv 数据库,也是很多新生代数据库的存储引擎。当数据量很大的时候,可以考虑使用 RocksDB。
milvus:开源的向量数据库,支持经典的向量索引,主要用于向量相似度检索。
使用 C# 进行AI工程开发-基础篇(六):小结
https://zhuanlan.zhihu.com/p/649766306
前面这些,是我实战总结的一套 AI 开发架构。来一个简单的小结:
- 推理层:直接调用各个inference库,零代码;
- 引擎层:采用 csharp 开发,通过 NativeAOT 编译为各个平台的动态链接库,暴露 common api 接口;
- SDK:基于 common api 接口,进行各种语言的封装;
- Api Server:采用 http://asp.net,通过 SDK 调用引擎,对外提供 Web API
- 提供 swagger ui 界面
- 通过 blazor server 提供更友好的操作界面
- Web 应用开发:
- 通过 SDK 或 Api Server,集成 AI 功能
- 提供 web api 和 swagger ui 界面
- 通过 blazor server 提供更友好的操作界面
- 数据存储:采用 LiteDB/RocksDB/milvus
- 轻量全栈(Web/桌面/移动)开发:Blazor Hybrid
- 桌面/移动开发: Avalonia
- 小工具/教学:dotnet script/polyglot
不写cpp代码,不写 sql 不搞 orm,写少量的 js,靠 dotnet 实现了全栈 AI 应用开发。轻量全栈和桌面/移动开发还待验证,其它皆已在实际项目/产品中使用。
解读 - Span
https://www.cnblogs.com/pandefu/p/17536259.html
Span<T>
是C# 中的一种结构体,它是一种内存安全的类型,可以用来表示连续的内存区域。 Span<T>
可以被用于访问和操作数组、堆上分配的内存和栈上分配的内存。使用 Span<T>
可以避免不必要的内存拷贝,从而提高性能。
C#如何使用WASM跨语言调用?
https://www.cnblogs.com/hejiale010426/p/17613121.html
WebAssembly(简称Wasm)是一种用于基于堆栈的虚拟机的二进制指令格式。Wasm被设计为编程语言的可移植编译目标,支持在web上部署客户端和服务器应用程序。
CAP 7.2 版本发布通告
https://www.cnblogs.com/savorboard/p/cap-7-2.html
今天,我们很高兴宣布 CAP 发布 7.2 版本正式版,我们在这个版本中主要致力于 Dashboard 对 k8s 服务发现的支持。
从 7.1 版本以来,我们发布了4个小版本,在这些版本中我们主要解决发现的Bug和添加一些小功能,这篇文章中可能也会提及我们在这些小版本中加的一些小功能。
下面,具体看一下我们新版本的功能吧。
记一次 .NET某报关系统 非托管泄露分析
https://www.cnblogs.com/huangxincheng/p/17614463.html
前段时间有位朋友找到我,说他的程序内存会出现暴涨,让我看下是怎么事情?而且还告诉我是在 Linux 环境下,说实话在Linux上分析.NET程序难度会很大,难度大的原因在于Linux上的各种开源工具主要是针对 C/C , 和 .NET 一毛钱关系都没有,说到底微软在 Linux 上的调试领域支持度还远远不够。
虽然知道分析起来难度可能会很大,但该分析还是要分析的,让朋友抓一个 dump 过来,上 WinDbg 说话。
C# 中关于 T 泛型【C# 基础】
https://www.cnblogs.com/hnzhengfy/p/CST.html
C# 里面的泛型不仅可以使用泛型函数、泛型接口,也可以使用泛型类、泛型委托等等。在使用泛型的时候,它们会自行检测你传入参数的类型,因此它可以为我们省去大量的时间,不用一个个编写方法的重载。与此同时,使用泛型会提升程序的效率。
本文将围绕泛型的各个方面,详细看下泛型到底怎么用,会给每位开发者带来什么便利。
.NET 8 发布的最后一个预览版Preview 7, 下个月发布RC
https://www.cnblogs.com/shanyou/p/17615851.html
微软在2023年8月9日 发布了.NET 8 Preview 7[1],这是它在11月14日 RTM 之前进入发布候选阶段之前的最后预览版。 该预览版也于也与 VS 2022 v17.7 版本一起发布。对于预览版7,System.Text.Json 和 codegen 在此版本中具有最大的变化。所有这些特定项目都属于 .NET 网站主题[2]中提供的一般指导。
Json 基于类 Newtonsoft.Json.Linq.JToken 的应用简介【C# 基础】
https://www.cnblogs.com/hnzhengfy/p/JObjectJArray.html
在日常开发中,对于 Json 的使用还是比较频繁的,特别是 Json 对象和字符串或者实体对象之间的转换。
虽然几乎天天用,但是总是感觉没那么明了,今天结合微软的 Newtonsoft.Json.Linq 类,试着详解一下,把相关的内容列一下。
.NET Core多线程 (4) 锁机制
https://www.cnblogs.com/edisonchou/p/dotnetmultithreadlearningnoteschap4.html
去年换工作时系统复习了一下.NET Core多线程相关专题,学习了一线码农老哥的《.NET 5多线程编程实战》课程,我将复习的知识进行了总结形成本专题。
本篇,我们来复习一下.NET中锁机制的相关知识点,预计阅读时间10分钟。
.NET对象的内存布局
https://www.cnblogs.com/yyfh/p/17621881.html
在.NET中,理解对象的内存布局是非常重要的,这将帮助我们更好地理解.NET的运行机制和优化代码,本文将介绍.NET中的对象内存布局。 .NET中的数据类型主要分为两类,值类型和引用类型。值类型包括了基本类型(如int、bool、double、char等)、枚举类型(enum)、结构体类型(struct),它们直接存储值。引用类型则包括了类(class)、接口(interface)、委托(delegate)、数组(array)等,它们存储的是值的引用(数据在内存中的地址)。
本周由于Myuki大佬感染新冠,国际板块暂停更新一周,将在下周补齐,所以本周只有国内板块。
版权声明
- 国内板块由 InCerry 进行整理 : https://github.com/InCerryGit/WeekRef.NET
- 其余内容来自 Myuki WeekRef,由InCerry翻译(已获得授权) : https://github.com/mayuki/WeekRef.NET