编辑
2025-09-27
C#
00

AdvancedDataGridView是一个功能强大的控件,扩展了标准的DataGridView,提供了更多的功能和灵活性。本文将介绍如何在WinForms应用程序中使用AdvancedDataGridView,并通过一个详细的示例来展示其用法。

安装AdvancedDataGridView

首先,我们需要从GitHub上获取AdvancedDataGridView控件。你可以从以下链接下载:

C#
https://github.com/davidegironi/advanceddatagridviews

下载完成后,将控件添加到你的项目中。

Nuget 安装

C#
NuGet\Install-Package DG.AdvancedDataGridView -Version 1.2.29301.14

image.png

创建WinForms项目

  1. 打开Visual Studio,创建一个新的WinForms项目。
  2. 将AdvancedDataGridView控件添加到工具箱中。你可以通过右键点击工具箱,选择“选择项...”,然后浏览到下载的AdvancedDataGridView.dll文件来完成这一步。
编辑
2025-09-27
C#
00

摘要


Span 是 C# 中引入的一个结构类型,用于提供对连续内存区域的类型安全访问。这个特性最初在 .NET Core 2.1 中引入,旨在优化性能,尤其是在处理数组、字符串和其他类型的缓冲区时。Span 可以看作是一个窗口,它允许开发者在不复制数据的情况下操作内存。

正文


Span 的特点

  • 类型安全:Span 是泛型的,确保只能访问指定类型的数据。
  • 内存效率:它允许在不创建新数组或字符串副本的情况下操作数据,减少了内存分配和垃圾回收的压力。
  • 栈分配:Span 是一个栈上的结构,它不会导致堆分配。
  • 切片操作:可以轻松地从现有的 Span 创建新的 Span,而不会发生数据复制。
  • 安全性:Span 不能跨越异步方法的边界,因为它可能指向非托管的内存,这样可以避免潜在的数据竞争和同步问题。

应用场景

  • 解析数据:在解析文件或网络数据流时,可以使用 Span 来避免不必要的内存复制。
  • 性能关键型应用:对于需要高性能内存操作的应用程序,如游戏、高频交易系统等。
  • 内存管理:在需要精细控制内存分配和回收的场景中,Span 提供了更大的灵活性。
  • 缓冲区操作:对于需要在缓冲区上执行复杂操作的场景,Span 提供了简单的API。
编辑
2025-09-27
C#
00

摘要


并行编程是现代软件开发中不可或缺的一部分,特别是在处理大量数据或进行计算密集型任务时。随着多核处理器的普及,C# 语言通过 .NET Framework 提供了强大的并行编程支持。本文将深入探讨 C# 中的并行编程,解释其概念、特点,并通过示例演示其用法。

正文


什么是 Parallel?

System.Threading.Tasks.Parallel 是 .NET Framework 中的一个类,它提供了一组静态方法,用于并行执行循环(Parallel.ForParallel.ForEach)和代码块(Parallel.Invoke)。这些方法可以自动分配任务到多个线程,利用多核处理器的能力,从而提高应用程序的性能。

Parallel 的特点

  • 简化并行代码的编写:Parallel 类提供了简单的 API,使得开发者能够轻松编写并行代码,而不需要深入理解线程管理和同步机制。
  • 动态负载均衡:Parallel 使用任务调度器来动态分配工作负载,可以根据系统的实际运行情况调整线程的使用,以达到最佳性能。
  • 易于集成和使用:Parallel 类与其他 .NET Framework 功能(如LINQ)紧密集成,可以轻松地在现有代码中实现并行操作。
  • 异常处理:Parallel 提供了集中的异常处理机制,可以捕获并行执行代码块中抛出的所有异常。
编辑
2025-09-27
C#
00

在现代软件开发领域,集成人工智能服务已成为增强应用程序智能化水平的关键策略。本文档旨在详尽阐述如何在 C# 环境下利用 Semantic Kernel 框架调用 Ollama,旨在帮助开发者迅速掌握并实现对话功能。我们将提供示例代码及详尽注释,以确保每一个步骤都具备高度的可理解性。

什么是 Semantic Kernel?

Semantic Kernel 是一个强大的框架,旨在简化与各种 AI 服务的集成。它支持多种 AI 模型,包括 OpenAI、Google、Mistral 等。通过 Semantic Kernel,开发者可以轻松创建聊天机器人、自动化代理等应用。

Ollama 简介

Ollama 是一个开源的 AI 模型管理工具,允许开发者在本地运行和调用各种 AI 模型。通过与 Semantic Kernel 的结合,开发者可以利用 Ollama 提供的模型来实现复杂的对话功能。

环境准备

在开始之前,请确保您的开发环境中已安装以下组件:

  • .NET SDK
  • Visual Studio 或其他 C# 开发工具
  • Ollama(请参考 Ollama 官方文档 进行安装)

安装必要的 NuGet 包

在您的项目中,您需要安装 Semantic Kernel 的相关 NuGet 包。可以通过 NuGet 包管理器控制台运行以下命令:

Bash
dotnet add package Microsoft.SemanticKernel.Connectors.Ollama --prerelease

image.png

编辑
2025-09-27
C#
00

背景介绍

Semantic Kernel 是微软推出的一个强大框架,允许开发者轻松创建具有高级功能的AI代理。本文将详细指导你如何使用C#创建一个交互式AI应用。

准备工作

安装必要的NuGet包

首先,你需要安装以下NuGet包:

Bash
dotnet add package Microsoft.SemanticKernel dotnet add package Microsoft.Extensions.Logging dotnet add package Microsoft.Extensions.Logging.Console

配置服务

在开始之前,确保你已经:

  • 我这用的是siliconflow,你也可以用第三方的,默认是OpenAI或Azure
  • 获取了模型部署ID
  • 准备好API密钥和终端点

代码实现

完整的控制台应用程序示例