For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
预约演示登录免费开始
  • 使用 SDK
    • SDK 概述
    • SDK 如何工作
    • Quickstart
    • Customer showcase
  • 使用 SDK
    • 项目结构
    • 添加自定义代码
    • Migrating to Replay
    • 功能特性
  • 参考
      • Generating an SDK
      • 发布到 NuGet
      • Configuration
      • 添加自定义代码 (.NET)
      • .NET 兼容性
      • 变更日志
      • Customer showcase
  • 资源
    • generators.yml
Checking status...
SOC2Soc 2 Type II
© 2026 Fern • Birch Solutions, Inc., a Postman company

Documentation

SDKsDocsAsk FernCLI Reference

API Definitions

OpenAPIAsyncAPIOpenRPCgRPC

Resources

BlogSupportPricing

Company

Brand KitPrivacy PolicyTerms of Service
LogoLogo
预约演示登录免费开始
参考.NET

Changelog

March 18, 2026
March 18, 2026
此页面是否有帮助?
编辑此页面
上一个

March 19, 2026

下一个

March 17, 2026

2.34.0

(feat): 添加 unified-client-options 配置标志。启用时,所有认证参数、 全局头部和 BaseUrl 都合并到 ClientOptions 中,使客户端 构造函数采用单一参数,无需位置参数:

1# generators.yml
2groups:
3 dotnet-sdk:
4 generators:
5 - name: fernapi/fern-csharp-sdk
6 config:
7 unified-client-options: true

之前 (默认):

1var client = new MyClient(
2 "my-api-key",
3 clientOptions: new ClientOptions { BaseUrl = "..." }
4);

之后 (启用 unified-client-options: true):

1var client = new MyClient(
2 new ClientOptions
3 {
4 ApiKey = "my-api-key",
5 BaseUrl = "https://api.example.com",
6 }
7);

支持的认证方案:bearer token、基本认证 (用户名/密码)、header 认证、 OAuth 客户端凭据 (clientId/clientSecret + 自定义参数) 和推断认证。 全局头部 (非字面量) 也包括在内。

ClientOptions 的属性根据参数的特性使用适当的 C# 语义:

  • 有环境变量回退 — public string? ApiKey { get; set; }。 可空且可变,以便构造函数可以通过 clientOptions.ApiKey ??= GetFromEnvironmentOrThrow(...) 应用回退。
  • 可选 (无环境变量) — public string? ApiKey { get; init; }。 可空,构造后不可变。
  • 必需 (无环境变量,非可选) — public required string ApiKey { get; init; }。 不可空,编译器在调用处强制执行。当没有配置默认环境时,BaseUrl 也是 required,替代之前静默默认为 "" 的行为。

当任何 ClientOptions 字段是 required 时,构造函数参数变为 不可空 (ClientOptions clientOptions 而不是 ClientOptions? clientOptions = null), 并且 Clone() 使用带有 [SetsRequiredMembers] 注解的内部复制构造函数。

2.33.1

(fix): 修复 README 生成,使用 generator.yml 中的 package-name 字段作为 安装说明和徽章中的 NuGet 包名称。之前,README 始终使用命名空间 (或 package-id 自定义配置) 而不是配置的 package-name,而后者是实际的 NuGet 包标识符。

2.33.0

(feat): WebSocket 工厂方法现在当通道指定 baseUrl 时,从主客户端的 多 URL 环境解析基础 URL。这允许 WebSocket 客户端使用在根客户端定义的环境 (例如, Environment.Wss) 而不需要单独的每个 WebSocket 环境 类。

2.32.2

(fix): 修复在 netstandard2.0 和 net462 目标上字面量结构 GetHashCode 的 CS1501 构建错误。string.GetHashCode(StringComparison) 仅在 .NET Core 2.1+ / .NET Standard 2.1+ 中可用。生成的代码现在使用 StringComparer.Ordinal.GetHashCode(Value),它在所有框架上都可用。

2.32.1

(fix): 修复具有 application/x-www-form-urlencoded 内容类型的引用请求体 生成 FormRequest 而不是 JsonRequest。之前,使用带有表单 URL 编码内容类型的 $ref 模式的端点会错误地发送 JSON 序列化的 请求体,导致认证令牌请求 (例如 OAuth) 失败。