- 博客(438)
- 资源 (4)
- 收藏
- 关注
原创 01.MCP之协议概述
是一个开源的开放标准协议,旨在解决 AI 应用与各种外部系统(数据源、工具、服务)之间的集成问题。它被比喻为AI 的 USB-C 接口,为不同的 AI 模型和服务提供统一、标准化的连接方式,让它们可以互操作、共享信息、调用工具,而无需为每种服务单独开发接口代码。传统上,AI 模型无法直接访问实时数据或工具,比如本地文件、数据库或第三方 API。MCP 提供了一种标准化协议,使这些功能可以被 AI 应用安全、可复用地调用。
2026-03-03 08:30:35
296
原创 Visual Studio 2026 中的 GitHub Copilot Agent 模式
GitHub Copilot Agent 模式理解自然语言提示自动拆解任务并规划执行步骤修改代码、运行命令、调用工具持续监控执行效果自动迭代直至满足目标这与传统的 Copilot(仅生成代码建议)不同,Agent 模式更像是一个智能自动化助手,可执行多步骤复杂任务,而不是单次单向响应。Visual Studio 2026 中的GitHub Copilot Agent 模式✅ 支持多步、自动执行✅ 可调用终端、使用工具✅ 内置规划与执行监控✅ 可视化计划与 JSON 追踪。
2026-03-03 08:29:27
543
原创 Visual Studio 2026 中GitHub Copilot代码补全功能
工具 > 选项 > 文本编辑器 > Inline Suggestions可以关闭自动补全、调整补全延迟、修改接受建议快捷键工具 > 选项 > 环境 > 字体和颜色 > 代码补全可启用语法高亮(关键字、变量、函数、字符串等不同颜色)为与实际代码区分,可设置透明度和斜体可禁用颜色化显示实时代码补全和下一步编辑预测支持多种语言和场景(注释生成代码、单元测试、SQL 等)高度可定制(外观、快捷键、自动补全、延迟)安全合规提示(公共代码引用、内容排除)
2026-03-02 09:21:37
253
原创 .NET10之MvcOptions
);options.ModelBindingMessageProvider.SetValueIsInvalidAccessor(value => "无效的值:{0}");options.ModelBindingMessageProvider.SetMissingBindRequiredValueAccessor(field => "{0} 字段是必填的");});// 添加一个自定义的输出格式化器});});});MvcOptions。
2026-03-02 09:20:15
725
原创 .NET10之IHttpContextAccessor
提供了访问当前请求的的能力。是与每个 HTTP 请求相关联的对象,它包含了关于请求的所有信息,如请求头、请求体、用户身份、请求路径、查询字符串等。提供了访问当前请求的的能力,通常用于服务类、后台任务等无法直接通过控制器访问的场景。是与 HTTP 请求生命周期相关联的对象,它在请求处理过程中由框架创建,并在请求完成时销毁。是一个线程安全的工具,它能够在请求生命周期内的任意时刻提供的访问,但仅在请求处理中有效。通过,你可以访问请求头、查询字符串、用户信息、响应数据等与请求相关的内容。
2026-02-28 08:37:00
781
原创 .NET10之ASP.NET的依赖注入
在 ASP.NET Core 中,依赖注入(DI)是一种设计模式,它允许对象在运行时动态地获取其所依赖的其他对象。ASP.NET Core 内置了一个轻量级的 DI 容器,它通过一系列接口和类,帮助管理对象的创建、生命周期以及它们之间的依赖关系。是依赖注入容器的注册点,用于注册服务并定义它们的生命周期。是服务提供者,用于解析已注册的服务实例。管理服务的作用域,确保每个请求或任务内共享同一个实例。服务生命周期:ASP.NET Core 提供三种服务生命周期(瞬时、作用域、单例),分别用于不同的场景。
2026-02-28 08:35:46
1128
原创 .NET10之csproj项目文件
csproj文件是 .NET 项目的核心配置文件,它用于控制项目的构建、依赖关系、输出类型等多个方面。通过合适地配置.csproj文件,开发者可以简化项目管理,提升构建效率,并且自定义构建和发布流程。每个和都对应了项目的不同配置和依赖,灵活的构建系统(MSBuild)使得开发者能够精细地调整项目的每个环节。
2026-02-27 09:07:14
517
原创 .NET10之WebApplicationOptions
是 ASP.NET Core 6+ 中一个非常有用的配置类,它通常与配合使用,用于配置的某些选项。通过,开发者可以设置应用程序的根目录、Web 根目录、命令行参数等。它的主要作用是为应用程序提供初始化时的一些关键配置信息。
2026-02-27 09:06:21
332
原创 .NET10之WebApplicationBuilder
是 ASP.NET Core 6+ 中引入的简化应用程序启动和配置的核心类。它封装了许多底层机制,包括依赖注入、环境配置、日志记录和请求处理管道,使得开发者可以更加简洁和直观地构建 Web 应用程序。通过,你可以配置服务容器、环境、日志、路由等。它的实现原理基于和 ASP.NET Core 的各个核心组件,如 DI 容器和中间件机制,保证了在灵活性的同时,简化了配置和开发的复杂度。
2026-02-24 07:56:52
500
原创 .NET10之CodePagesEncodingProvider
是 .NET 中用于提供对传统字符编码支持的类。它位于命名空间中,主要用于提供对旧版编码的支持,特别是在 .NET Core 中。它的作用是将对多个字符编码的支持扩展到 .NET Core 中,这些编码通常在 Windows 平台上用于旧版应用程序。
2026-02-24 07:55:45
817
原创 .NET10之AppContext
AppContext是一个用于管理应用程序全局设置和功能开关的类。它通过SetSwitch和方法提供了管理应用程序行为的功能开关,可以在不同的条件下启用或禁用某些特性。它在调试、诊断、功能开关、跨平台配置等场景中非常有用。AppContext并不专门与 HTTP 请求生命周期相关,它的作用域更广,适用于整个应用程序的上下文。
2026-02-14 08:41:47
592
原创 .NET10之Middleware 和 Filter
Middleware:关注全局层面的请求和响应处理,负责控制整个应用的请求管道。Filter:主要用于 MVC/Web API 控制器的细粒度操作,关注具体的控制器方法和响应结果。Middleware的核心职责是在全局请求管道中处理 HTTP 请求和响应,包括请求的预处理、响应的后处理、流控制和错误处理等。它对整个应用程序的请求处理具有控制权。Filter的核心职责是在 MVC/Web API 控制器或操作方法的生命周期内执行操作,通常用于处理授权验证、模型验证、输入输出处理等细粒度的控制。
2026-02-14 08:41:00
1043
原创 .NET10之ActionResult
是一个抽象类,表示从控制器的动作方法返回的结果。它的作用是告诉框架如何处理请求的响应。ASP.NET MVC 框架根据的实现类生成 HTTP 响应并返回给客户端。是一个抽象类,它的多个实现类提供了多种响应类型,允许开发者在 ASP.NET MVC 应用中返回不同类型的响应。具体的实现类包括ViewResultJsonResultFileResult等,它们分别对应不同的应用场景。掌握这些实现类及其使用方式有助于开发者编写灵活、可维护的 Web 应用程序。
2026-02-11 08:36:53
380
原创 .NET10之从进程角度理解dotnet run
是 .NET Core 和 .NET 5+ 环境的核心命令行工具。它不仅提供了构建、发布和测试等功能,还负责启动你的应用程序(如 ASP.NET Core 或控制台应用)。加载并运行实际的应用程序代码,启动 Web 服务器,并处理请求。这一系列的过程在 .NET Core 生态中形成了一个高效且灵活的执行框架。负责初始化和管理 .NET 环境,包括加载 .NET 运行时(CoreCLR)、处理构建任务、恢复依赖项等。(.NET Core 运行时),并运行应用程序代码。其中,dotnet.exe。
2026-02-08 08:04:50
682
原创 .NET10之ASP.NET Core的Filter管线
ASP.NET Core的过滤器管线是一个高度灵活且功能强大的机制,允许开发者在请求的生命周期内注入自定义逻辑。通过合理地使用过滤器,可以提高代码的可维护性、可重用性,并增强应用程序的扩展性。掌握过滤器的执行顺序及其用途,能够帮助开发者在实现功能时遵循最佳实践,避免性能瓶颈和潜在的问题。理解并合理使用过滤器管线,对于构建高质量的ASP.NET Core应用至关重要。
2026-02-08 08:04:06
648
原创 .NET10之IAsyncAuthorizationFilter
是 ASP.NET Core 提供的一个异步授权过滤器接口,用于在请求处理过程中执行自定义的授权验证逻辑。它适用于需要异步执行授权验证的场景,能够为开发者提供更大的灵活性和控制力。在实现时,开发者需要注意异步操作的错误处理、性能优化等问题,以确保授权逻辑的高效和可靠执行。
2026-02-07 08:43:45
456
原创 .NET 10之IServiceCollection
除了内置的服务和第三方服务外,开发者还可以向添加自定义服务。// 自定义业务逻辑在是 .NET Core 中实现依赖注入的核心组件,它通过提供方法来配置和管理应用程序中的服务,并确保这些服务在需要时能够被注入到不同的类中。合理地使用配置服务的生命周期和依赖关系,有助于提高应用程序的可维护性、可扩展性和可测试性。
2026-02-07 08:43:07
422
原创 .NET10之 ASP.NET Core 异常处理机制
尽管 ASP.NET Core 提供了内置的异常处理机制,但在实际应用中,开发者往往需要根据特定需求进行定制。
2026-02-06 08:44:10
876
原创 .NET10之IAsyncExceptionFilter
提供了一种异步异常处理机制,可以有效处理异步操作中出现的异常。它适用于现代 Web 应用,尤其是在执行异步 I/O 操作(如数据库查询、外部 API 调用等)时。与同步的不同,能够异步地执行日志记录、错误通知等操作,从而提高程序的性能和响应性。通过实现,开发者能够更好地处理和响应异常,增强系统的健壮性和用户体验。
2026-02-06 08:42:37
258
原创 .NET 10 之dotnet run的功能
dotnet run是 .NET 开发过程中一个非常有用的命令,它简化了构建和运行的流程,使开发者能够快速启动和测试应用程序。它适用于开发和调试阶段,尤其是在小型应用和本地开发环境中。自动构建、恢复依赖项并运行应用程序。支持多平台(Windows、Linux、macOS)。可以与调试工具集成,在开发阶段提供快速反馈。适合开发和测试阶段,不适合生产环境中的大规模部署。通过合理地使用dotnet run,开发者可以提高开发效率,并在本地快速验证应用程序的功能。
2026-02-05 08:06:33
748
原创 HttpClient之DelegatingHandler
是 .NET 中用于构建 HTTP 请求处理管道(Pipeline)的一个抽象类,它继承自,并通过责任链模式(Chain of Responsibility)将多个处理器串联起来。set;单一职责无状态(Stateless)可组合可测试遵循调用约定。
2026-02-02 08:50:32
421
原创 ThreadPool中worker thread满载会影响IOCP thread吗
worker thread 并发度超过 CPU 数量时,IOCP thread 仍可运行,但其执行将因 CPU 竞争而出现可观测的调度延迟。
2026-02-02 08:49:38
365
原创 深入理解RuntimeHelpers.GetHashCode
这是一个静态方法,用于获取对象的“运行时哈希码”。返回的是 CLR 为对象分配的、与实例身份相关的哈希码,该值忽略任何的重写,仅在对象生命周期内保持稳定。维度是否可重写是否语义逻辑/值语义实例身份与 Equals 相关通常是否典型用途哈希集合调试 / 身份区分。
2026-01-30 08:20:20
932
原创 详解ThreadPool的GetMaxThreads、GetMinThreads、GetAvailableThreads
Worker Thread 最大数量。线程池不会创建超过这个数量的工作线程。CompletionPort Thread 最大数量。线程池不会创建超过这个数量的 I/O 回调线程。上限值非常大(默认 Worker 线程最大值 32767,IOCP 线程通常 1000)超过上限,线程池不会再创建新线程,而是通过排队等待任务执行:线程池在空闲时预创建的最小工作线程数:线程池在空闲时预创建的最少 IOCP 线程数保证线程池在初次使用时不会出现线程创建延迟不会限制线程池最大可伸缩能力。
2026-01-30 08:19:33
1173
原创 ThreadPool的线程初始化和动态调整机制分析
线程类型初始化策略动态调整主要职责初始化时创建,数量≈CPU核心数不调整获取 I/O completion,构造 WorkItem按需创建,初始数量少Hill Climbing 动态增减执行 CPU task / I/O continuation / timer 回调I/O 密集型场景:CompletionPortThread 保证 I/O 完成事件快速搬运CPU 密集型场景:WorkerThread 随任务负载动态伸缩。
2026-01-28 08:27:58
594
原创 深入理解ThreadPool中的WorkerThread和CompletionPortThread
关注点定义CLR ThreadPool 内部的 IOCP 轮询线程,不进入托管执行执行托管工作单元(work item)的线程由 IOCP poller取出并投递到 worker 队列在 worker 上执行,不是在 poller 上。
2026-01-28 08:27:06
720
原创 Skip-gram 模型深入介绍
词的语义由其上下文所决定。形式化地,如果两个词在大量语料中具有相似的上下文分布,则它们在语义空间中应当相近。Pwo∣wexpvwo′⊤v∗w∑∗w∈Vexpvw′⊤vwPwo∣w∑∗w∈Vexpvw′⊤vwexpvwo′⊤v∗w该形式本质上是一个多分类对数线性模型。Skip-gram 是一个以最大化词–上下文互信息为目标、通过隐式矩阵分解学习高质量词向量的统计模型。
2026-01-27 08:19:45
812
原创 C# 中的 LinkedList
是面向节点操作的集合常量时间的结构性修改明确的前驱 / 后继关系在现代 .NET 应用中属于特定场景下的工具型集合,而非通用首选。
2026-01-27 08:13:47
433
原创 ServicePoint 内部的 ConnectionGroup
ConnectionGroup 是 ServicePoint 内部的逻辑分组单元每个组维护独立的连接队列,实现连接复用与隔离创建条件严格依赖 HttpWebRequest.ConnectionGroupName不同组之间互不复用连接支持身份隔离、高并发请求隔离、长连接隔离是高并发和大规模 HTTP 客户端调优的核心对象。
2026-01-26 09:08:46
483
原创 负对数似然函数详解
在样本观测值x1xnx1xn固定的前提下,将联合概率密度函数视为参数θ(\theta)θ的函数,定义似然函数为Lθ∣x1xn∏i1nfxi∣θLθ∣x1xni1∏nfxi∣θ对数似然函数定义为ℓθ∣x1xnlogLθ∣x1xn∑i1nlogfxi∣θℓθ∣x1xnlogLθ∣x1xni1。
2026-01-26 09:07:07
760
原创 深入理解ServicePointManager和ServicePoint
是一个,负责维护、配置并查找实例。是一个的连接管理对象,用于管理与该终结点相关的底层网络连接及其行为策略。
2026-01-23 08:50:51
921
原创 AngularJS中 then catch finally 的语义、执行规则与推荐写法
then:只做“值转换”同步函数直接 return异步函数必须 return Promisecatch:集中、链尾finally:只做状态清理在 AngularJS 中,then负责“算值”,catch负责“兜底”,finally负责“收尾”,三者各司其职,链条才是可维护的。
2026-01-21 08:38:59
611
原创 AngularJS中$q.when()的用法
q.when()将一切“可能是异步的东西”,统一为一个可控、可组合、可追踪的$qPromise。简化接口设计提升可维护性消除同步 / 异步分支与 AngularJS 变更检测机制完美协同。
2026-01-21 08:36:54
406
原创 AngularJS中$q 服务的用法
q基于 Promise/A+ 思想与 Digest 机制深度集成支持链式调用、错误传播与并发控制是构建高可维护 AngularJS 应用的基础设施。
2026-01-20 08:47:48
547
原创 CBOW 模型中输入矩阵、输出矩阵与词表向量矩阵深入解析
词表大小为∣V∣(|V|)∣V∣词向量维度为d(d)dWin∈R∣V∣×dWin∈R∣V∣×d第i(i)i行向量vwi∈Rdvwi∈Rd表示词wi(w_i)wi的输入向量(input embedding)Wout∈R∣V∣×dWout∈R∣V∣×d第 (i) 行向量 (\mathbf{u}_{w_i} \in \mathbb{R}^d)
2026-01-20 08:46:42
747
原创 CBOW 模型中的输出层
pwt∣contextexpW′∗t⋅h∑∗i1VexpWi′⋅hpwt∣context∑∗i1VexpWi′⋅hexpW′∗t⋅h该概率分布覆盖整个词表。通过向量内积对词进行线性打分理论上采用 softmax 建立完整条件概率模型工程实践中常以 Negative Sampling 替代 softmax同时学习输入向量与输出向量两套参数。
2026-01-19 08:37:51
644
童继龙的ERP顾问感悟.pdf
2010-04-03
ES2015规范
2016-05-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅