- 博客(815)
- 资源 (12)
- 收藏
- 关注
转载 深入了解 C# 的 CancellationToken
。概述:最近,我开始涉足 C# 中的异步编程,同时编写了一个副项目,我看到很多方法使用在其签名中称为的东西。我知道这与取消异步操作有关(名称是一个死赠品,对吧?),但这就是我的知识范围。因此,我深入研究了这个话题,在这里,我展示了我迄今为止所学到的一切的简短版本。CancellationToken请注意,这篇文章并不涉及如何进行异步编程或基于 TAP/任务的异步模式,如果您想复习这些主题,这里有一...
2024-04-24 08:00:38 2
转载 记一次 .NET某设备监控自动化系统 CPU爆高分析
一:背景 1. 讲故事先说一下题外话,一个监控别人系统运行状态的程序,结果自己出问题了,有时候想一想还是挺讽刺的,哈哈,开个玩笑,我们回到正题,前些天有位朋友找到我,说他们的系统会偶发性CPU爆高,CPU上去了就下不来了,让我帮忙看一下怎么回事,而且自己也分析过了,没找到哪里有问题,写监控的都是高手,给我的第一感觉就是这个dump可能解决起来不容易,不管怎么说,有了dump就开干吧!二:WinDb...
2024-04-23 08:00:55 3
转载 使用 MSTestRunner 将单元测试制作为.NET应用独立可执行文件
以往的单元测试都是不能单独作为一个独立的可执行文件跑的,需要在 VisualStudio 或 VSTest 或 dotnet test 里面运行。这就限制了运行单元测试的环境了,有时候开发者可能期望在无 SDK 或开发环境下执行单元测试,这时就可以用到本文介绍的 MSTestRunner 功能,将单元测试制作为独立可执行文件将单元测试制作为可执行文件,运行此可执行文件即可运行单元测试。可执行文件可...
2024-04-22 08:00:57 6
转载 [MAUI]集成富文本编辑器Editor.js至.NET MAUI Blazor项目
目录获取资源从源码构建从CDN获取获取扩展插件创建项目创建控件创建Blazor组件初始化保存销毁编写渲染逻辑实现只读/编辑功能切换模式获取只读模式状态响应切换事件实现明/暗主题切换项目地址Editor.js是一个基于 Web 的所见即所得富文本编辑器,它由CodeX团队开发。之前写过一篇博文专门介绍过这个编辑器,可以回看:开源好用的所见即所得(WYSIWYG)编辑器:Editor.js。.NET...
2024-04-17 08:00:26 13
转载 构建多平台支持的 .NET 容器镜像
构建多平台支持的 .NET 容器镜像Intro最近看到有朋友在尝试在 arm 上支持的docker 镜像刚好之前对 dotnet-exec 的镜像添加了多平台的支持,之前仅支持 x64 的平台,新增了对于 arm 的支持,于是想分享一下如何针对 Dockerfile 改造以支持多平台,之前有一篇官方博客介绍了多平台的容器支持,可以参考文末的参考链接,希望对大家有所帮助Sample多平台构建 Do...
2024-04-16 08:00:24 15
转载 .NET 8 使用 Direct2D 绘制界面及 AOT 发布
这是我用不到 370 行代码,从零开始控制台创建 Win32 窗口,再挂上交换链,在窗口上使用 D2D 绘制界面内容。最后使用 AOT 方式发布的测试应用。成品文件体积不超过 10MB 且运行内存稳定在 60MB 以内,满帧率运行但 CPU 近乎不动整个测试应用采用了 .NET 8 的框架,用于更好的支持 AOT 发布使用了 Vortice 系列库用于对 DirectX 的封装,方便让编写调用 D...
2024-04-15 08:01:11 14
转载 本周六“盛派 3.14 技术开放日”等你来参加!
盛派 3.14 技术开放日盛派将3 月 14 日定为盛派技术开放日为庆祝这个节日去年,我们举办了“盛派 3.14 技术开放日”活动备受开发者欢迎????????去年活动精彩瞬间????️????️今年“盛派 3.14 技术开放日”活动将于本周六( 4 月 13 日)开展地址????️苏州工业园区翠薇街 1 号独墅湖体育中心一期 A 栋(青创港)由于下午有实操工作坊建议大家带笔记本并带充电器扫描二维码报名或点击“阅读原文”报名...
2024-04-11 08:00:57 13
转载 .NET 使用Semantic Kernel实现图片内容识别
前言前几日在浏览devblogs.microsoft.com[1]的时候,看到了一篇名为Image to Text with Semantic Kernel and HuggingFace[2]的文章。这篇文章大致的内容讲的是,使用Semantic Kernel结合HuggingFace来实现图片内容识别。注意,这里说的是图片内容识别,并非是OCR,而是它可以大致的描述图片里的主要内容。我...
2024-04-10 08:00:08 19
转载 拥抱AI浪潮,掌握提升十倍生产力的秘诀!
引言自 2022 年 ChatGPT 的横空出世以来,人工智能领域迎来了一波创新的高潮。AI Agent、Copilot、Sora 等工具以其显著提升生产力的能力,迅速成为开发者关注的焦点。AI 技术是否会引发新一轮的生产力革命,已经不再是一个悬而未决的问题。随着 AI 技术的迅猛发展和相关工具的广泛应用,企业业务流程的效率得到了前所未有的提升。同时,这也带来了对企业用人需求和岗位结构的重新调整。...
2024-04-09 08:00:24 24
转载 Qdrant 向量数据库的部署以及如何在 .NET 中使用 TLS 安全访问
本文介绍如何使用 Docker 部署 Qdrant 向量数据库,以及其相关的安全配置,并演示如何使用 .NET 通过 TLS 安全访问 Qdrant 向量数据库。1. 背景随着 AIGC 的发展,向量数据库已经成为一个重要的资源,可以高效地存储和检索大量的向量数据。向量数据库在需要相似性搜索的各种应用中起着至关重要的作用,例如:作为推荐系统,基于内容的图像检索和个性化搜索。通过使用向量数据库,我们...
2024-04-08 08:03:10 37
转载 UOS 之VisualStudio 远程调试
本文记录的是在 Windows 系统里面,使用 VisualStudio 2022 远程调试运行在 UOS 里面 dotnet 应用的配置方法本文写于 2024.03.19 如果你阅读本文的时间距离本文编写的时间过于长,那本文可能包含过期的知识我将以我的 UOS 虚拟机作为例子告诉大家如何在 Windows 系统里面,使用 VisualStudio 2022 远程调试运行在 UOS 里面 dotn...
2024-04-07 08:00:28 23
转载 开发者阵营分化,.NET 开源生态系统如何走向未来?
作者 | Aaron Stannard译者 | Sambodhi策划 | 凌敏本文深入剖析了 .NET 开发者对生态系统的复杂情感。一方面,他们依赖微软提供的解决方案,认为这最为稳妥;另一方面,他们又对第三方工具抱有担忧,在信任与恐惧之间挣扎。在 .NET 生态系统中,各种观点相互碰撞,有的开发者坚定地支持微软的首选方案,而有的则强调多样性和选择的重要性。然而,文章也揭示了单一选择可能带来的局限性...
2024-04-03 08:01:02 17
转载 .NET 9 中的 TaskCompletionSource.SetFromTask
.NET 9 Preview 1 中的 TaskCompletionSource.SetFromTaskIntro.NET 9 Preview 1 中为 TaskCompletionSource/TaskCompletionSource<T> 引入了一个 SetFromTask/TrySetFromTask 的方法,可以从一个已完成的 task 设置 TaskCompletionSou...
2024-04-02 08:03:40 19
转载 构建SatelliteRpc:基于Kestrel的RPC框架(整体设计篇)
背景之前在.NET 性能优化群内交流时,我们发现很多朋友对于高性能网络框架有需求,需要创建自己的消息服务器、游戏服务器或者物联网网关。但是大多数小伙伴只知道 DotNetty,虽然 DotNetty 是一个非常优秀的网络框架,广泛应用于各种网络服务器中,不过因为各种原因它已经不再有新的特性支持和更新,很多小伙伴都在寻找替代品。这一切都不用担心,在.NET Core 以后的时代,我们有了更快、更强、...
2024-04-01 08:02:02 21
转载 使用.NET自托管 Garnet 服务
Garnet 是 Microsoft Research 推出的一个新的远程缓存存储,旨在实现极快、可扩展和低延迟.Garnet 可在单个节点内进行线程扩展.它还支持分片集群执行,包括复制、检查点、故障转移和事务.它可以在主内存以及分层存储(例如 SSD 和 Azure 存储)上运行.Garnet 支持丰富的 API 图面和强大的扩展性模型.更多的细节以及和 Redis 的性能对比,可以参考 InC...
2024-03-29 08:00:17 107
转载 64位世界中的 WinForms
作者:Klaus Loeffelmann排版:Rani Sun作为一个依靠创新和发展而蓬勃发展的社区的一部分,WinForms 开发人员经常突破界限来创造新的可能性。我们的开发人员还负责维护业务软件的关键任务线,这通常需要十年以上的时间。我们重视您的信任和您对使用我们的工具创建出色的软件解决方案的热情。如您所知,Visual Studio 2022 从 32 位到 64 位的过渡引发了一些复杂问题...
2024-03-27 08:00:54 24
转载 在 .NET 中使用 OPC UA 协议
什么是 OPC UAUaExpert 的使用下载 UaExpert首次启动添加 OPC UA 服务器连接 OPC UA 服务器查看 PLC 数据使用 C# 读写 OPC UA 数据连接到 OPC UA 服务器获取节点的值写入节点的值什么是 OPC UAOPC UA(OPC Unified Architecture,开放平台通信统一架构)是 OPC 基金会应用在自动化技术的机器对机器网络传输协定。O...
2024-03-26 08:00:28 47
转载 一文精通.NET Swagger 使用
一文精通.NET Swagger 使用❝在后端开发中,常用 Web API 模式,对外提供 RESTful API 让前端调用.而其中最著名的就是使用 Swagger(俗称:丝袜哥),Swagger 不但提供了非常直观的页面供开发者查看,还能配置注释说明,分组等,还可以直接在浏览器上测试接口,可以说是,现在不用 Swagger 的后端开发者不是个好开发者.本文将针对我在日常工作中使用 Swagge...
2024-03-25 08:02:07 125
转载 使用Android手机运行.NET
使用我们闲置或者不闲置的 Android 手机安装.NET❝都 2024 年了,微软对.NET 开源已经 9 个年头了,至今甚至还有不少搞 Java 开发的人说.NET 不开源,不跨平台.这里我只能建议这些搞 Java 的人多上网看看世界.自从 .NET 6 开始微软便开始提供基于 ARM64 平台的.NET SDK.所以我们可以在 Android 平台上运行 .NET 6.0 及以后的所有 .N...
2024-03-22 08:00:13 88
转载 Garnet: 力压Redis的C#高性能分布式存储数据库
今天看到微软研究院开源了一个新的C#项目,叫Garnet,它实现了Redis协议,可以直接将Redis替换为Garnet,客户端不需要任何修改。根据其官网的信息,简单的介绍一下它。开源仓库地址:https://github.com/microsoft/garnet文档地址:https://microsoft.github.io/garnet/Garnet是微软研究院基于C# .NET8.0开发的一...
2024-03-20 08:01:04 456
转载 谈谈C# 以管理员方式启动实现过程
unsetunset前言unsetunset本文由网友(@nobody)投稿,欢迎留言技术讨论。以管理员方式不只是简单的启动一个进程,在实际开发过程中遇到的情况可能会复杂的多。比如用户打开应用程序就是以管理员方式启动的,那这个时候就不需要再以管理员方式自启;比如用户是在无人值守的情况下使用,就需要考虑管理员提权的提示行为,只有在”不提示,直接提升“的情况下才以管理员方式启动;比如管理员启动方式会进...
2024-03-19 08:00:34 31
转载 WebAssembly核心编程之Memory
由于Memory存储的是单纯的二进制字节,所以原则上我们可以用来它作为媒介,在wasm模块和数组程序之间传递任何类型的数据。在JavaScript API中,Memory通过WebAssembly.Memory类型表示,我们一般将它内部的缓冲区映射相应类型的数组进行处理。WebAssembly也提供了相应的指令来提供针对Memory的读、写、扩容等操作(源代码从这里下载)。一、容量限制与扩容二、内...
2024-03-18 08:00:51 34
转载 WebAssembly核心编程之Module 与 Instance
WebAssembly程序总是以模块来组织,模块是基本的部署、加载和编译单元。在JavaScript编程接口中,模块通过WebAssembly.Module类型表示。WebAssembly.Module通过加载的.wasm二进制文件创建而成,它承载了描述wasm模块的元数据,类似于描述程序集的Assembly对象。WebAssembly.Module自身是只读且无状态的,有状态的是根据它结合指定...
2024-03-14 08:03:10 37
转载 WebAssembly核心编程之wasm模块实例化的N种方式
当我们在一个Web应用中使用WebAssembly,最终的目的要么是执行wasm模块的入口程序(通过start指令指定的函数),要么是调用其导出的函数,这一切的前提需要创建一个通过WebAssembly.Instance对象表示的wasm模块实例一、wasm模块实例化总体流程二、利用WebAssembly.Module创建实例三、通过字节内容创建创建实例四、利用XMLHttpRequest加载wa...
2024-03-13 08:00:24 61
转载 WebAssembly之利用Global传递全局变量
利用WebAssembly的导入导出功能可以灵活地实现宿主JavaScript程序与加载的单个wasm模块之间的交互,那么如何在宿主程序与多个wasm之间传递和共享数据呢?这就需要使用到Global这个重要的对象了。一、数值类型全局变量二、将JavaScript函数设置为全局变量三、利用全局变量处理字符串一、数值类型全局变量Global全局变量支持多种值类型,包括数组(i32/i64和f32/f6...
2024-03-12 08:03:41 33
转载 WebAssembly之利用Table传递引用
在《WebAssembly入门笔记[2]》中,我们介绍了如何利用Memory在作为宿主的JavaScript应用和wasm模块之间传递数据,但是Memory面向单纯二进制字节的读写在使用起来还是不太方便,此时我们会更多地用到另一个重要的对象Table。Table利用用来存储一组指定类型的对象,说得准确一点是对象的引用,所以可以读取出来直接消费。一、利用Table存储wasm函数引用二、执行call...
2024-03-11 08:00:43 28
转载 WebAssembly入门之利用Memory传递字节数据
利用灵活的“导入”和“导出”机制,WebAssembly与承载的JavaScript应用之间可以很便利地“互通有无”。《与JavaScript的交互》着重演示了如何利用函数的导入和导出实现功能的共享,接下来我们主要关注数据的传递或者共享。总的来说,WebAssembly与宿主程序之间的数据传递主要有如下三种手段,本篇文章主要关注Memory。源代码下载:app3app4Memory:以二进制(字...
2024-03-07 08:03:58 39
转载 WebAssembly入门之JavaScript的交互
前一阵子利用Balazor开发了一个NuGet站点,对WebAssembly进行了初步的了解,觉得挺有意思。在接下来的一系列文章中,我们将通过实例演示的方式介绍WebAssembly的一些基本概念和编程模式。首先我们先来说说什么是WebAssembly,它主要帮助我们解决什么问题。本文演示实例下载:app1app2一、概述二、WebAssembly程序(app.wat)三、编译生成app.wa...
2024-03-06 08:00:51 25
转载 在Avalonia项目中使用MediatR和MS.DI库实现事件驱动通信
大家好,我是沙漠尽头的狼!AvaloniaUI是一个强大的跨平台.NET客户端开发框架,让开发者能够针对Windows、Linux、macOS、Android和iOS等多个平台构建应用程序。在构建复杂的应用程序时,模块化和组件间的通信变得尤为重要。Prism框架提供了模块化的开发方式,支持插件的热拔插,而MediatR则是一个实现了中介者(Mediator)模式的事件订阅发布框架,非常适合用于模块...
2024-03-05 08:00:28 27
转载 我们对 .NET 9 的愿景
作者:.NET 团队排版:Alan Wang欢迎来到 .NET 9!继几个月前成功发布 .NET 8 之后,我们又进入了一个新年度发布周期。我们建议开发人员将他们的应用程序迁移到 .NET 8。在这篇文章中,我们将分享我们对 .NET 9 的初步设想,它将于年底在 .NET Conf 2024 上发布。我们最关注的领域是云原生和智能应用程序开发。您可以期待我们在提升性能、生产力和安全性以及整个平台...
2024-03-04 08:00:54 42
转载 细聊ASP.NET Core WebAPI格式化程序
前言 我们在使用ASP.NET Core WebApi时它支持使用指定的输入和输出格式来交换数据。输入数据靠模型绑定的机制处理,输出数据则需要用格式化的方式进行处理。ASP.NET Core框架已经内置了处理JSON和XML的输入和输出方式,默认的情况我们提交JSON格式的内容,它可以自行进行模型绑定,也可以把对象类型的返回值输出成JSON格式,这都归功于内置的JSON格式化程序。本篇文章...
2024-02-29 08:00:29 41
转载 .NET NativeAOT 指南
随着 .NET 8 的发布,一种新的“时尚”应用模型 NativeAOT 开始在各种真实世界的应用中广泛使用。除了对 NativeAOT 工具链的基本使用外,“NativeAOT”一词还带有原生世界的所有限制,因此您必须知道如何处理这些问题才能正确使用它。在这篇博客中,我将讨论它们。基本用法使用 NativeAOT 非常简单,只需要在发布应用时使用 MSBuild 传递一个属性PublishAo...
2024-02-26 08:00:11 44
转载 C# 12 中新增的八大功能你都知道吗?
前言转眼之间C#都已经更新到了12了,那么C# 12 中新增的八大功能你都了解过吗?今天我们来简单介绍一下C# 12 中新增的八大功能。C#/.NET该如何自学入门?C#12详细功能介绍请阅读微软官方文档:https://learn.microsoft.com/zh-cn/dotnet/csharp/whats-new/csharp-12同学们可以使用最新的 Visual Studio 2022 ...
2024-02-23 08:00:09 45
转载 .NET Conf china 2023 Watch Party【长沙站】倒计时3天
长沙.NET技术社区组织的《AI驱动下的开发者新生态》正在火热报名中,目前名额不多,不要犹豫哦~活动时间:2024年2月25日下午1点30-5点30,地点:长沙市麓云路地铁站附近-梅溪湖创新中心19楼大会议室。报名方式:扫描海报中的小程序二维码或查看这篇文章的原文,或者拷贝链接地址【https://hdxu.cn/8aUjf】到浏览器打开都可以哦~图片路线图导航目的地:梅溪湖创新中心图片附近交通方...
2024-02-22 08:00:32 42
原创 AIGC程序员效能提升之道
得益于IT产业近几年的繁荣,老杨所在公司的业务也出奇的兴隆,每天干不完的工作背后,也意味着健康的消耗和体重的不断增加。曾记否,刚毕业的老杨体重刚刚堪堪破百,同事们经常调侃他说是一阵风就能吹走,经过了十年的拼搏,他的体重终于达到了130斤。而自从来到这家公司之后,短短两年时间,他的体重暴涨了20斤,就达到了150斤。他也终于体会到人到中年的感受,肚腩越来越大,裤头涨到了38码,他经常自诩肥肉就...
2024-02-21 22:53:00 884
原创 AIGC程序员快速搞钱之道
得益于IT产业近几年的繁荣,老杨所在公司的业务也出奇的兴隆,每天干不完的工作背后,也意味着健康的消耗和体重的不断增加。曾记否,刚毕业的老杨体重刚刚堪堪破百,同事们经常调侃他说是一阵风就能吹走,经过了十年的拼搏,他的体重终于达到了130斤。而自从来到这家公司之后,短短两年时间,他的体重暴涨了20斤,就达到了150斤。他也终于体会到人到中年的感受,肚腩越来越大,裤头涨到了38码,他经常自诩肥肉就是自己...
2024-02-21 08:00:13 841
原创 没有面向对象,你以为可以为所欲为吗
工作一年的你,新建一个控制器,引入数据库对象,然后吭哧吭哧的完成业务逻辑,返回前端数据,完成了一天的工作的你感到有些不完美,觉得加个内存缓存会减少数据库的压力,当然加入redis 后,更能让你小小的满足了一下,随着业务的数据的变大,你加上了消息队列,削峰填谷嘛,我们都懂。但是,代码里面你用的都是一个一个的对象,这时候,你偶尔也会反思下自己,真的懂OOP 吗?OOP 就是在一堆各种对象里面,然后写一...
2024-02-20 08:02:28 339
原创 什么是.NET技术人的进阶秘诀?兴趣+对.NET的坚定信心
作为一位内地城市的开发者,我经常纠结于未来职业发展之路,增删改查的循环往复,几乎已经成为我工作的全部,似乎一眼都看不到头。是啊,也不记得写了多久的业务代码?程序员就是一成不变的写业务代码吗?在这条看似无尽的编码旅程中,我们,一群默默无闻的程序员,似乎总是被困在业务代码的无尽海洋里。清晨的第一缕阳光照进办公室时,我们已经开始了一天的编码;当夜幕降临,城市万家灯火通明时,我们依旧在电脑前与bug搏斗,...
2024-02-19 08:00:45 356
原创 AI驱动下的开发者新生态-2024长沙社区活动
回顾2019年初,在.NET中文社区及包括苏州、广州、深圳等地区社区等大力推动、在众多企业的大力支持下,长沙地区的开发者们发起成立了长沙.NET技术社区,并组织了《2019年长沙开发者技术大会》,当时参会人数超过200多人,会上宣讲的约6个话题,也一度成为长沙地区比较热门的技术话题,在社区激起了一定的学习热潮。图片然而,由于疫情和种种原因,这样的线下活动未能持续举行,某种意义上来说,可能是一种遗憾...
2024-02-16 08:00:36 930
原创 《AI驱动下的开发者新生态》-2024长沙.NET技术社区活动-诚邀大家报名
回顾2019年初,在.NET中文社区及包括苏州、广州、深圳等地区社区等大力推动、在众多企业的大力支持下,长沙地区的开发者们发起成立了长沙.NET技术社区,并组织了《2019年长沙开发者技术大会》,当时参会人数超过200多人,会上宣讲的约6个话题,也一度成为长沙地区比较热门的技术话题,在社区激起了一定的学习热潮。然而,由于疫情和种种原因,这样的线下活动未能持续举行,某种意义上来说,可能是一种...
2024-02-15 21:16:00 383
金山卫士部分已经开放了的源代码下载
2010-12-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人