CPF 是开源的C#跨平台UI框架,支持使用OpenGL来渲染,可以用来硬件加速播放视频或者显示3D模型 实现原理其实就是Skia用OpenGL后端,Skia里绑定GLView的OpenGL纹理,将纹理作为Skia的图像混合绘制。 在CPF里使用OpenGL,不能选择NetCore3.0和Net4, ...
.net平台使用SDK快速对接各大语言模型 1.项目介绍 最近,在做GPT项目时,发现各个平台的接口规范和参数不同,需要根据不同平台和模型写多种接口,比较麻烦,不想Python那样有丰富和方便的AI环境, 如果c#有一个SDK可以方便调用各种平台模型就好了,这是AllInAI.Sharp.API萌芽 ...
WPF应用中,控件本身也可以通过实现事件代码实现拖动的处理,不过如果我们使用GongSolutions.WPF.DragDrop来处理,事情会变得更加简单轻松,它支持很多控件的拖动处理,如ListBox, ListView, TreeView, DataGrid等源自ItemsControl的控件,... ...
一、条件 1、windows server主机一台,我是windows server 2019(当然windows10或者10月份5日更新的windows11也是可以行的)。 2、SQL Sever,我用的是SQL Server2019。 3、Power BI Report Server默认位置安装 ...
Parallel.ForEach Parallel.ForEach 是一个用于在集合上并行执行迭代操作的强大工具。它通过有效地利用多核处理器的能力来提高性能。Parallel.ForEach 不仅能够简化并行编程,而且它在执行简单循环时可以提供比传统迭代更好的性能。 下面是一个简单的示例,演示了如何 ...
在.NET Core中,使用Action和Options参数方式配置服务并将配置信息对象注册到IServiceCollection的好处在于,它提供了更高级别的可配置性和可扩展性。这种模式允许将配置信息与服务的实现分离,使配置更加模块化和可管理。通过将配置信息对象注册到IServiceCollect ...
简介 从C# 3.0起很少需要自己声明委托。System.Func 是一个泛型委托,它可以表示带有返回值的方法。它可以接受一个到多个输入参数,并返回一个指定类型的结果。System.Func 委托的最后一个类型参数表示方法的返回值类型。而System.Action系列代表返回void的方法。 Fun ...
这是我在C#中第一次用到json,以前都用别的替代,但是了解了之后发现这个是真的好用。 首先,有几个网站先贴上来保存一下。 JSON 模式验证器 - Newtonsoft (jsonschemavalidator.net),顾名思义,就是验证我们的json格式是否正确。 Introduction ( ...
在本示例中,我们将使用Autofac和AspectC(Autofac.Extras.DynamicProxy2)来演示如何实现AOP(面向切面编程)。我们将创建一个简单的C#控制台应用程序,并应用AOP以解决日志记录的问题。首先,让我们讨论AOP的用途和目标。 AOP(面向切面编程)的用途 AOP是 ...
开发环境 系统版本: win10 .NET SDK: NET8 开发工具:vscode 参考引用:使用 dotnet user-jwts 管理开发中的 JSON Web 令牌 注意:以下示例中的端口、token等需替换成你的环境中的信息 创建项目 运行以下命令来创建一个空的 Web 项目,并添加 M ...
在我们很多应用系统中,往往都需要根据实际情况生成一些编码规则,如订单号、入库单号、出库单号、退货单号等等,我们有时候根据规则自行增加一个函数来生成处理,不过我们仔细观察后,发现它们的编码规则有很大的共通性,因此可以考虑使用一些通用的业务编码规则生成,从而在系统中统一维护即可,本篇随笔介绍如何在WIn... ...
一:背景 1. 讲故事 在高级调试的旅程中,经常会有一些朋友问我什么是 工作集(内存),什么是 提交大小,什么是 Virtual Size, 什么是 Working Set 。。。截图如下: 既然有很多朋友问,这些用口头也不怎么好描述,刚好上午有时间就系统的聊一下吧。 二:内存术语解读 1. Vir ...
推荐算法是机器学习和数据挖掘领域的重要组成部分,用于为用户提供个性化推荐内容。在.NET中,可以使用不同的算法来实现推荐系统。在本文中,我将介绍三种常见的推荐算法:协同过滤、内容过滤和深度学习推荐系统,并提供相应的.NET源代码示例。 协同过滤推荐算法 协同过滤算法基于用户行为数据,通过分析用户之间 ...
在繁华的都市中,小悦作为一名软件工程师,每天都在这座钢筋水泥的森林里忙碌。她的生活似乎被工作和各种琐碎的事情填满了,但在这个繁忙的生活中,她总能在工作之余找到一些小小的乐趣。 这天下班后,小悦收到了一封来自国外同学苏菲的email。邮件的内容让她的思绪一下子飘回了那个学习汇编语言的大学时代。 苏菲是 ...
Autofac 是一个功能丰富的 .NET 依赖注入容器,用于管理对象的生命周期、解决依赖关系以及进行属性注入。本文将详细讲解 Autofac 的使用方法,包括多种不同的注册方式,属性注入,以及如何使用多个 ContainerBuilder 来注册和合并组件。我们将提供详细的源代码示例来说明每个概念 ...
选项用来提供对相关设置的强类型访问,读取配置首选使用选项模式。选项无法脱离容器使用,依赖容器,实现了选项不同的访问方式。选项模式使用了泛型包装器,因此具备了如下优点: 不需要显示注册选项具体类型,只需要将泛型包装器注入到容器中; 对于选项实例的评估推迟到获取IOptions.Value时进行,而不是 ...
前面老周给大伙伴们演示了过滤器的运行流程,大伙只需要知道下面知识点即可: 1、过滤器分为授权过滤、资源访问过滤、操作方法(Action)过滤、结果过滤、异常过滤、终结点过滤。上一次咱们没有说异常过滤和终结点过滤,不过老周后面会说的。对这些过滤器,你有印象就行了。 2、所有过滤器接口都有同步版本和异步 ...
众所周知,当我们使用IIS的时候,在使用负载均衡的情况下,想停掉一个站点,通常会点击Sites(网站)中的Stop(停止)来停止一个站点。但是这样做,会带来一个问题,当点击Stop(停止)时,正在响应中的请求会立刻被切断,使客户端无法收到响应,后续也无法连接该站点,在某些业务场景中,比如涉及金额交易 ...
在.NET生态系统中,有许多出色的依赖注入(DI)框架可供选择。每个框架都有其独特的特点和优点,可以根据项目需求和偏好进行选择。下面详细介绍一些.NET中优秀的DI框架,它们的优点以及适用场景。 1、Microsoft.Extensions.DependencyInjection: 官方支持:Mic ...
实现自定义配置源至少需要添加如下成员: 实现IConfigurationSource接口的配置源; 实现IConfigurationProvider接口或虚基类ConfigurationProvider的配置提供程序; 添加配置源的IConfigurationBuilder扩展方法; 如自定义一个T ...