小编Ben*_*min的帖子

如何在 MultipartFormData 中传递字典?

我有一个控制器,它使用表单数据接受一个IFormFile对象和一个对象(一个名为 的类)。Document

这是控制器:

[HttpPost]
public async Task<IActionResult> Post(IFormFile file, [FromForm] Document document, CancellationToken token = default)
{
    ...
}

Run Code Online (Sandbox Code Playgroud)

这就是Document类的样子:

public class Document
{
    public Guid DocumentId { get; set; }
    public string Name { get; set; }
    public DocumentType DocumentType { get; set; } = DocumentType.Unsorted;
    public Dictionary<string, string> Metadata { get; set; } = new Dictionary<string, string>();
}
Run Code Online (Sandbox Code Playgroud)

这是POST向所述控制器提供数据的代码:

using (var multipartContent = new MultipartFormDataContent())
{
    multipartContent.Add(new StringContent(document.DocumentId.ToString()), FormDataKeys.DocumentId);
    multipartContent.Add(new StringContent(document.DocumentType.ToString()), …
Run Code Online (Sandbox Code Playgroud)

c# .net-core asp.net-core asp.net-core-webapi

5
推荐指数
1
解决办法
3141
查看次数

电子邮件意图不再适用于Android Lollipop

我一直在使用以下代码Intent在Android中启动发送电子邮件.在Android Lollipop(API级别21)之前,这个工作正常.不幸的是,在Android Lollipop中,这会引发"不支持的操作"错误.

Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setType("message/rfc822");
intent.setData(Uri.parse("mailto:" + email));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

它非常基本,它只是通过电子邮件地址,让用户选择使用哪个应用程序.

我应该如何调整我的代码以使其在api级别上工作?我的最低API级别是16(JellyBean).

编辑 我已根据评论和答案包含MIME类型.

android android-intent android-5.0-lollipop

2
推荐指数
1
解决办法
1620
查看次数