.NET 10 的 AI 技术栈全景:M.E.AI、MCP 与 Agent Framework 深度解析
姊妹篇二(技术·架构方向)。上一篇 讲「怎么一步步学」,这一篇讲「.NET 10 的 AI 技术栈到底由什么构成」。适合想看清全貌、做技术选型或团队分享的读者。
一、.NET 10 是 AI 原生的一代
过去在.NET里接 LLM (大模型),要么调RESTFul API、要么引第三方社区库,抽象层各自为战。.NET 10的变化是:AI 能力被做进了基础类库(BCL)层面,微软提供统一抽象,让你用写后端的方式写 AI。
三个底座级事实:
- .NET 10 = LTS,支持到2028-11,技术栈至少能撑 3 年。
- C# 14提供语言底座,ASP.NET Core 10 / EF Core 10 / Aspire 13是具体承载。
- 关键抽象:M.E.AI(统一对话抽象)+ MCP C# SDK(工具协议)+ Agent Framework(多步编排)。
一句话理解架构哲学:
你以前写的 Service / Repository / Controller,现在只是「AI Agent 的工具箱」;大模型不是替代你,而是被你用 MCP + Agent Framework 编排起来。
二、总览架构图(文字版)
┌─────────────────────────────────────────────┐ │ 应用层 │ │ Blazor / MAUI / Web App / 小程序后台 / Desktop 桌面 │ └───────────────┬─────────────────────────────┘ │ HTTP / SSE / WebSocket ┌───────────────▼─────────────────────────────┐ │ ASP.NET Core 10 │ │ Minimal API(内置校验+SSE) · OpenAPI 3.1 │ │ Identity(Passkey) · Blazor 10 │ └───────────────┬─────────────────────────────┘ │ ┌───────────────▼─────────────────────────────┐ │ AI 编排层(.NET 10 新重点) │ │ Microsoft.Extensions.AI (IChatClient) │ │ Agent Framework 1.19.0 (Harness/多Agent/A2A) │ │ MCP C# SDK 2.2.0 (ModelContextProtocol) │ │ VectorData + DataIngestion (RAG落地) │ └───────────────┬─────────────────────────────┘ │ ┌───────────────▼─────────────────────────────┐ │ 数据 & 基础设施层 │ │ EF Core 10 (向量搜索/Left Join/命名过滤器) │ │ SQL Server / PostgreSQL / Cosmos DB │ │ .NET Aspire 13 (分布式追踪/容器编排) │ │ Native AOT · Docker 原生产镜像 │ └─────────────────────────────────────────────┘下面自顶向下逐层拆解。
三、应用层
承载交互入口,技术选型很宽:
- Blazor 10 / MAUI:同构 C# 全栈,前后端共享类型与逻辑。
- Web App / 小程序后台:
Minimal API做轻量后端。 - 桌面(WPF/Avalonia UI/WinUI):本地
AI Agent工具(MCP STDIO模式)。
这一层不绑定 AI 框架,只负责把用户请求转成HTTP / SSE / WebSocket流向ASP.NET Core 10 Minimal API。
四、ASP.NET Core 10 层(请求与流式底座)
AI应用对Web 框架的关键诉求是流式输出与校验,这一代都原生解决。
| 能力 | 说明 |
|---|---|
| Minimal API | app.MapPost("/chat", ...),少样板,天然适配 AI 路由 |
| 内置校验 | DataAnnotations+IValidatableObject,请求体即约束 |
| SSE 原生流式 | text/event-stream,大模型逐字吐字零额外依赖 |
| OpenAPI 3.1 | 自动生成文档,方便前端 / 工具发现接口 |
| Identity 10 (Passkey) | 无密码鉴权,产品化 AI Agent 的登录底座 |
| Blazor 10 | 全栈组件,适合做带流式UI的Copilot界面 |
最小可用流式示例:
builder.Services.AddChatClient(newOpenAIChatClient("gpt-4o-mini",apiKey));app.MapPost("/ask",async(IChatClientchat,HttpContextctx,[FromBody]AskRequestreq)=>{ctx.Response.ContentType="text/event-stream";awaitforeach(varchunkinchat.CompleteStreamingAsync(req.Question)){awaitctx.Response.WriteAsync(chunk);awaitctx.Response.Body.FlushAsync();}});五、AI 编排层(.NET 10 新重点)
这是真正「AI 原生」的一层,四个核心件。
5.1 Microsoft.Extensions.AI(M.E.AI)
统一的 AI 抽象层,核心是IChatClient接口。
- 模型无关:
OpenAI / Azure / Ollama一行切换。 - 组合管道:可在
IChatClient上挂载日志、重试、函数调用中间件。 - 嵌入抽象:
IEmbeddingGenerator用于RAG向量化。
builder.Services.AddChatClient(newOpenAIChatClient("gpt-4o-mini",apiKey));5.2 MCP C# SDK 1.0(ModelContextProtocol)
把后端能力「暴露」给模型的标准协议(AI 时代的 USB),2026年2月份 1.0 已 GA。
- 一个
[McpServerTool]Attribute,把普通方法变成 AI 可发现、可调用的 Tool。 - 模型按
JSON Schema调用,无需每人写胶水代码。 - 前端 / Claude / Cursor / 自研 Agent 都能消费同一个 MCP Server。
[McpServerTool(Title="查库存")]publicstaticasyncTask<string>CheckStock(stringsku){// 里面就是普通 EF Core 查询}一句话价值:你以前写的 Service 方法,加个 Attribute 就成了 AI 可调用能力。
5.3 Agent Framework 1.0(2026-04 GA)
合并了Semantic Kernel + AutoGen,.NET / Python同API。dotnet 技术栈 Agent 框架的一等公民。
| 构件 | 作用 |
|---|---|
AIAgent/ChatClient.AsHarnessAgent() | 上下文压缩、Todo、文件记忆、Plan/Execute |
MCP集成 | Agent 直接消费你写的 MCP Server |
A2A(Agent-to-Agent) | 多个 Agent 互相派活(售前 → 工单) |
Foundry Hosted Agents | 本地跑完丢Azure AI Foundry托管,带鉴权/伸缩/追踪 |
What are hosted agents? 更多信息请查看
https://learn.microsoft.com/en-us/azure/foundry/agents/concepts/hosted-agents
最小AI Agent示例:
varagent=chatClient.AsHarnessAgent(128_000,16_384,new(){Name="售后Agent",ChatOptions=new(){Instructions="先查MCP工具,再回答;拿不到证据就明说",Tools={newCheckStockTool(),newOpenTicketTool()}}});5.4 VectorData + DataIngestion(RAG 落地)
Microsoft.Extensions.DataIngestion:读PDF/MD/Confluence导出并切片。Microsoft.Extensions.VectorData:在PG / Cosmos / SQLite上做向量存储与检索。- 与
EF Core 10向量列互补,小中型知识库可全用 .NET 原生栈。
六、数据 & 基础设施层
6.1 EF Core 10 的三个 AI 友好特性
| 特性 | 对 AI 场景的价值 |
|---|---|
| 向量相似度搜索 | production-ready,SQL Server 2025 / PG / Cosmos 支持VECTOR_DISTANCE,RAG 检索直接落库 |
LeftJoin/RightJoin原生支持 | 多源数据 JOIN,知识拼接更顺 |
| 命名查询过滤器 | IgnoreQueryFilters(["TenantFilter"]),多租户隔离开箱即用 |
新手常问:EF Core 10 向量搜索靠谱吗?
生产可用。小中型知识库直接 EF 搞定,不用另起 Python 向量服务。
6.2 存储选型
- SQL Server 2025 / PostgreSQL / Cosmos DB:均支持向量列。
- 轻量场景可用SQLite跑通原型。
6.3 .NET Aspire 13
- 不是必学,但
「Web + API + Worker + MQ + PG + Redis + Agent」超过 3 个进程时,它的分布式追踪能省一周排错时间。 - 一键起全套 +
OpenTelemetry自动埋点,Agent 每步 Tool 调用可见。
新手常问:Aspire 是不是必学?
不是。单体的 Minimal API 用不到;一旦多进程协作,它价值显著,且对开发者友好。
6.4 Native AOT 与容器
- 控制台程序
dotnet publish直接出镜像,冷启动快 75%。 - Docker 原生产镜像,Lambda / ACA / 自建 K8s or K3s 都行,适合部署 AI Agent 服务。
七、关键技术对照:旧代码 → AI 工具
这是 .NET 10 最便宜的地方——存量资产零重写:
| 你已有的 | 加什么 | 变成什么 |
|---|---|---|
| Service 方法 | [McpServerTool] | AI 可调用 Tool |
| DbContext 查询 | EF Core 10 向量列 | RAG 检索源 |
| Controller 路由 | SSE 流式 | 大模型逐字输出 |
后台BackgroundService | DataIngestion | 增量嵌入管道 |
| Identity 登录 | Passkey | 无密码 Agent 鉴权 |
八、新手最常问的 3 个问题
Q1:我不会 Python,能玩转 2026 的 AI 吗?
能。M.E.AI 是 C# 抽象层,Agent Framework / MCP C# SDK 都是一等公民,模型侧调 OpenAI/Azure/Ollama 都一行换。
Q2:EF Core 10 向量搜索靠谱吗?
生产可用,SQL Server 2025 / PG / Cosmos 都支持VECTOR_DISTANCE,小中型知识库直接 EF Core 搞定,不用另起 Python 向量服务。
Q3:Aspire 是不是必学?
不是。单体的Minimal API项目用不到;一旦你「Web+API+Worker+MQ+PG+Redis+Agent」超过 3 个进程,Aspire 13.x 的分布式追踪能省一周排错时间。
九、总结
.NET 10 的 AI 路线,不是「学 AI」,而是「让 AI 成为你后端的一部分」。
你不需要从 Python 重写系统,只需要用MEAI + MCP + Agent Framework,把十年积累的业务代码,变成 AI 时代的工具箱。
| 层 | 核心组件 | 一句话职责 |
|---|---|---|
| 应用层 | Blazor/MAUI/Web | 用户入口 |
| Web 层 | ASP.NET Core 10 | 流式路由 + 校验 + 鉴权 |
| 编排层 | MEAI / MCP / Agent FW / VectorData | AI 能力编排 |
| 数据层 | EF Core 10 / SQL&PG&Cosmos / Aspire / AOT | 存储、检索、部署 |
配套阅读:姊妹篇一《.NET 10 AI 学习路线图:从 Minimal API 到 Agent 产品》——把上面这套技术栈拆解成「每周该做什么」的实操路线。