> This page is for SDK, version Legacy.
> For other versions, use one of these documentation indexes:
> - Current (default): https://buildwithfern.com/learn/sdks/current/llms.txt
> - Legacy: https://buildwithfern.com/learn/sdks/legacy/llms.txt

> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt.

## 1.14.2

**`(fix):`** 修复在客户端选项中带有类型化头部的生成根客户端出现 NullReferenceException 的问题。

## 1.14.1

**`(fix):`** 修复类型已写入但与其写入的命名空间冲突的问题。

## 1.14.0

**`(feat):`** SDK 现在支持 `AdditionalBodyProperties` 和 `AdditionalQueryParameters` 请求选项，可用于向请求添加任意属性。这对于与 alpha 或未文档化功能交互很有用。

```csharp
var response = await client.Users.Create(
  ...,
  new RequestOptions {
    AdditionalBodyProperties = new Dictionary<string, object> {
      { "key", "value" }
    },
  }
);
```

## 1.13.2

**`(fix):`** 修复由于本地机器时区与 CI 机器时区不同导致 MultipartFormTests 无法通过的问题。

## 1.13.1

**`(fix):`** 向前兼容枚举具有静态方法 `Custom(string value)`，允许您使用自定义值创建枚举的新实例。
"Custom" 是常用的枚举值，我们希望避免与静态方法冲突，因此我们将静态方法重命名为 `FromCustom(string value)`。
此功能受 `experimental-enable-forward-compatible-enums` 配置选项控制，因此我们接受这是一个破坏性更改，无需主版本升级。

**`(feat):`** 向前兼容枚举可以显式转换为字符串或从字符串转换。

```csharp
string myEnumAsString = (string)MyEnum.Enum1;
MyEnum myEnum = (MyEnum)"custom-value";
```

注意：我们不支持隐式转换，因为这可能导致用户意料之外的行为。

## 1.13.0

**`(feat):`** 添加对包含文件和非文件参数的 multipartform 请求的支持。
这在您想要在单个请求中发送文件和其他表单数据时很有用。

例如，您可以使用以下代码上传带有描述和一些元数据的文件：

```csharp
await client.UploadAsync(
    new UploadRequest
    {
        File = new FileParameter { Stream = fileStream, FileName = "file.txt" },
        Description = "This is a test file",
        Meta = new Meta {
            Key1 = "value1",
            Key2 = "value2"
        }
    }
);
```