c#form-data
时间: 2024-11-12 16:15:20 浏览: 10
在 C# 中,FormData 是用于发送 HTTP 请求(如 POST、PUT 等)时携带键值对数据的一种结构。它是 Newtonsoft.Json 库中的一个概念,尤其是在使用 ASP.NET 或 Web API 开发中,经常用于序列化和反序列化 JSON 格式的数据。
FormData 主要用于处理以下情况:
1. **文件上传**:当你需要通过表单提交文件,比如图片、文档等,FormData 可以方便地添加文件流作为 key-value 对。
2. **混合数据发送**:可以包含字符串、数字、数组等各种类型的值,并能自动转换它们到合适的 JSON 格式。
在 C# 中使用 FormData 的基本步骤如下:
```csharp
using (var content = new MultipartFormDataContent())
{
// 添加文本字段
var textPart = new StringContent("文本内容", Encoding.UTF8, "text/plain");
content.Add(textPart);
// 添加二进制文件
var fileStream = File.OpenRead("file.jpg");
using (var fileContent = new StreamContent(fileStream))
{
fileContent.Headers.ContentType = MediaTypeHeaderValue.Parse("image/jpeg");
content.Add(fileContent, "file", "file.jpg");
}
// 发送请求
HttpClient client = new HttpClient();
HttpResponseMessage response = await client.PostAsync("http://example.com/api/upload", content);
}
```
阅读全文