Swagger 将 IFormFile 参数列为“对象”类型

2024-04-07

我有一个控制器,它请求一个包含 IFormFile 作为其属性之一的模型。对于请求描述,Swagger UI(我使用 Swashbuckle 和 OpenApi 3.0 for .NET Core)将文件属性的类型列出为类型对象。有没有办法让 Swagger UI 表示确切的类型及其 JSON 表示形式来帮助客户端?

请求模型的控制器如下所示。

[HttpPost]
[Consumes("multipart/form-data")
public async Task<IActionResult> CreateSomethingAndUploadFile ([FromForm]RequestModel model)
{
    // do something
}

模型定义如下:

public class AssetCreationModel
{
    [Required}
    public string Filename { get; set; }

    [Required]
    public IFormFile File { get; set; }       
}

今天我们一直在探讨这个问题。如果将以下内容添加到启动中,它将把 IFormFile 转换为正确的类型

services.AddSwaggerGen(c => {
   c.SchemaRegistryOptions.CustomTypeMappings.Add(typeof(IFormFile), () => new Schema() { Type = "file", Format = "binary"});
});

另请参阅以下关于.net core中文件上传的文章https://learn.microsoft.com/en-us/aspnet/core/mvc/models/file-uploads?view=aspnetcore-2.1 https://learn.microsoft.com/en-us/aspnet/core/mvc/models/file-uploads?view=aspnetcore-2.1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Swagger 将 IFormFile 参数列为“对象”类型 的相关文章

  • 以编程方式注入依赖项asp.net core

    我刚刚开始Asp net core 依赖注入 我的概念可能不准确 这篇 docs asp net 帖子 https docs asp net en latest mvc controllers dependency injection ht
  • 发布到IIS,设置环境变量

    阅读这两个问题 答案 我能够在 IIS 8 5 服务器上运行 Asp net 5 应用程序 Asp net vNext 早期测试版发布到 Windows 服务器中的 IIS https stackoverflow com questions
  • App Insights 升级到 2.5 后,Azure 应用服务将无法启动

    我有一个存储库 它使用应用程序洞察来记录有关在 ASP NET 中运行的服务的信息 我们有一些 ASP NET Core 2 0 站点以及一些完整框架的 asp net 4 应用程序 随着应用程序洞察 2 5 的发布 我们在核心站点中获得了
  • 如何在 Windows 10 IIS 中的 Blazor Server 应用程序上支持多个浏览器选项卡?

    我将 Blazor 服务器应用程序发布到 Windows 10 上的本地 IIS 它运行良好 但我无法打开网站的多个窗口 选项卡 如果我尝试 它会永远加载 直到我关闭以前的应用程序窗口 此行为是否是由于 Windows 10 上的 Sign
  • ASP Core HttpClientFactory 模式使用客户端证书

    任何人都知道在使用时如何使用客户端证书HttpClientFactory 在我发现的所有示例中 您需要提供HttpMessageHandler in the HttpClient构造函数 使用时不可用HttpClientFactory se
  • 当 URL 包含 ASP.Net Core 参数的“+”时出现 404 错误

    当参数包含编码为空格的空格时 我的服务器返回 404 错误 代替 20 我不明白为什么 路线的形式为 Route Search PRM1 prm1 PRM2 prm2 PRM3 prm3 我的第一个问题是如何让服务器理解这种 URL htt
  • ASP.NET Core中间件如何进行DI?

    我正在尝试将依赖项注入到我的中间件构造函数中 如下所示 public class CreateCompanyMiddleware private readonly RequestDelegate next private readonly
  • 如何从 swagger 2.0 swagger-codegen-cli.jar 生成 java 代码

    有谁知道如何从 swagger 2 0 生成java代码 我的库是 swagger codegen cli 2 1 2 jar 有多种方法可以生成服务器代码或客户端代码 Using https generator swagger io ht
  • Asp.net Core 授权重定向未发生

    我正在尝试在 Asp net core 应用程序 dnx 4 5 中使用 cookie 身份验证 请注意 因为我有自定义身份验证机制 半径 所以我没有使用核心身份验证提供的开箱即用机制 当用户未经身份验证时 我想重定向到登录页面 我在 St
  • 实体框架7审计日志

    我正在将一个旧项目移植到 ASP NET 5 和 Entity Framework 7 我使用数据库优先方法 DNX 脚手架 来创建模型 旧项目基于Entity Framework 4 审计跟踪是通过重写实现的SaveChanges的方法D
  • ASP.NET Web API Swagger(Swashbuckle)重复OperationId

    I have a web api controller like below In swagger output I am having the below image And when I want to consume it in my
  • .Net Core Nuget Package - 将文件复制到包消费者 wwwroot

    我有一个 Net Core 2 2 库项目 该项目包含的所有内容都是一堆静态文件 其中 构建操作 设置为内容 该项目的唯一目的是构建到 Nuget 包中 并让任何消费者将包含的内容添加到他们的wwwroot folder 不幸的是 当查看解
  • 如何仅更新实体框架中的特定字段(核心)

    我正在编写一个应用程序 它从外部 API 提取数据并使用实体框架将其存储到我的 SQL Server 数据库中 我每天从这个 API 中提取数据 因此如果一行已经存在 记录将被更新 否则将创建一条新记录 这是通过检查 Id 来完成的 现在我
  • 尚未注册类型“Microsoft.AspNetCore.Mvc...”的服务

    我正在尝试测试此控制器方法 以确保它重定向到另一个控制器方法或存在模型错误 public IActionResult ResetPassword ResetPasswordViewModel viewModel if viewModel N
  • 如何在 SpringDoc OpenAPI 3 中引用文件?

    我有 Spring Boot 项目 我想在其中记录我的 API 这里是正在处理的 Web 服务的示例 ApiResponses value ApiResponse responseCode 200 content Content media
  • 从 Microsoft.AspNetCore.Http.HttpRequest 获取原始 URL

    The HttpRequestAsp Net 5 vNext 中的类包含 除其他外 有关请求 URL 的解析详细信息 例如Scheme Host Path etc 不过 我还没有发现任何地方可以公开原始请求 URL 只有这些解析值 在以前的
  • .NET7 Web API 中的 JSON 多态序列化

    NET7 包括许多改进System Text Json序列化器 其中之一是使用新的类型的多态序列化 JsonPolymorphic 属性 我正在尝试在我的 Asp Net Web API 中使用它 但是尽管模型已正确设置 但它似乎并未序列化
  • 我们需要依赖注入的接口吗?

    我有一个 ASP NET Core 应用程序 该应用程序有一些帮助程序类可以完成一些工作 每个类都有不同的签名方法 我在网上看到很多 net core 示例 它们为每个类创建接口 然后向 DI 框架注册类型 例如 public interf
  • ASP.NET Core/MVC 6 ViewModel 中的依赖注入 (DI)

    我使用构造函数注入在控制器中成功使用了 ASP NET 5 MVC 6 DI 我现在有一个场景 我希望我的视图模型在实现 IValidatableObject 时在 Validate 方法中使用服务 ViewModel 中的构造函数注入不起
  • ASPNETCoreModule 未与 .NET Core SDK 一起安装

    我安装了VS 2017随着 NET Core SDK在Windows 10上 但它没有安装ASPNETCoreModule如下图2所示 我想 NET Core SDK应该隐式安装它 并且不必单独安装它 NOTE 我正在尝试将我的 asp n

随机推荐

  • 使用 JSON 和 JSP 的 Spring MVC 控制器

    控制器中的相同方法可以用于 JSP 和其他 MIME 类型 如 XML 和 JSON 吗 我知道以下几种在 Spring MVC 中解析视图的方法 返回一个String与视图名称并将属性添加到Model or ModelMap 返回一个Mo
  • jQuery click:该函数在我单击按钮之前运行。要执行的代码已经包装在 click() 中的函数中

    里面的功能 btnPrint click 页面加载后立即运行 我这样做了 document ready function btnPrint click function if txtsomething val length gt 0 aja
  • 如何将外键字段添加到 Django 中的 ModelForm?

    我想做的是显示一个表单 让用户 输入文档标题 来自Document model 选择他们的其中之一user defined code从下拉列表中进行选择 由UserDefinedCode model 输入一个unique code 存储在C
  • 如何在swift中同时为相机和照片库制作UIImagePickerController

    我使用 UIImagePickerController 通过 iPhone 的相机拍照 我想同时显示 拍照 和 选择照片 My code imagePicker UIImagePickerController imagePicker del
  • 用于电子表格的 Google 应用脚本:如何在脚本管理器中隐藏辅助函数?

    我使用 Google Apps 脚本在 Google 电子表格中自定义了一个菜单 我遇到的问题是 当我按脚本管理器时 我正在使用的所有辅助函数都会列出 我想隐藏它们 我读过如果我在函数名称末尾加下划线 但它不起作用 From documen
  • Ruby 是否像 PHP 一样支持 var 引用?

    在 PHP 中 您可以使两个变量指向相同的数据 a foo b bar a b echo a Outputs bar echo b Outputs bar 我们在 Ruby 中尝试做的事情已经确定 app session等于session
  • 无法使用轨迹球单击列表视图中的视图

    我有一个在行视图中带有可单击按钮的列表视图 以及一个自定义 SimpleCursorAdapter 来实现此列表 尽管单击该行时 onitemclicklistener 没有被触发 请参阅here https stackoverflow c
  • MinGW C 编译器“无法编译简单的测试程序”

    我想将 MinGW 作为 C 编译器运行 MinGW 已从 Chocolatey 安装 调用是通过 CMake 从 gitlab runner 进行的 这失败了 cmake G MinGW Makefiles DCMAKE C COMPIL
  • 通过 Excel VBA 实现 IE11 自动化 - 公司网页

    首先 我对尝试通过 Excel VBA 自动化 IE 还很陌生 话虽这么说 我正在努力自动登录公司特定的网页 仅我们的员工可以访问 目标是自动登录 员工编号 密码并单击 登录 我发现 Firefox 在识别字段方面特别有帮助 所以这就是我在
  • Laravel 翻译 required_if 值

    我正在使用 Laravel 版本 5 2 45 目前我在翻译 required if 规则时遇到一些麻烦 当我使用 required if field value 时 它 会打印错误验证消息中的字段值 在本例中为 1 或 0 这不太可读 例
  • 如何对 LINQ to Objects 查询进行分区?

    这是一个资源分配问题 我的目标是运行查询来获取任何时间段的最高优先级班次 数据集非常大 对于此示例 假设 1000 家公司每个班次有 100 个班次 尽管实际数据集更大 它们都已加载到内存中 我需要对它们运行单个 LINQ to Objec
  • 具有不同图钉颜色的地图视图注释

    我有一个包含 200 多个对象的数组 我试图对每个对象执行循环 每个对象都有一个是 否字段 我想根据该是 否值显示不同颜色的标记 从我所看到的情况来看 我的循环首先遍历每个对象 然后在每个对象的末尾添加所有注释 由于当所有注释都添加到我的地
  • 如何使用 MSAL 对 AAD B2C 进行身份验证?

    我有一个使用 ADAL 的客户端 服务器身份验证的工作版本 但是 当您想要使用本地帐户 即 仅使用用户名或仅使用 AAD 之外没有支持身份验证器的电子邮件地址 时 B2C AAD 似乎无法与 ADAL 很好地配合 看来我们应该用于本地帐户的
  • 参考 Windows Powershell 中的弹出窗口

    我正在为我正在开发的网站进行测试自动化 我正在使用 Windows powershell 创建脚本来执行此操作 我的问题是我需要单击打开另一个窗口的链接 我需要以某种方式引用该窗口 ie new object com InternetExp
  • SQLite 数据到 RecyclerView

    该应用程序的数据存储在 SQLite 数据库中 UI 主要是 RecyclerView 问题是如何最好地将数据从数据库传输到 UI 同时保持主线程的运行 我原本计划使用 CursorLoader ContentProvider 和 Recy
  • 多维数组、可为 null 的引用类型和类型转换

    使用 C 8 的可空引用类型 我们可以编写 对于引用类型 T x T y x 但是 我无法理解多维和锯齿状数组的转换规则 string a new string 1 string b new string 1 string c new st
  • Haskell:ghci 是否显示“Chunk .. Empty”?

    向你学习 Haskell http learnyouahaskell com input and output bytestrings有一个这样的代码示例 ghci gt B pack 99 97 110 Chunk can Empty B
  • Grafana - 是否可以在基于 Loki 的仪表板查询中使用变量?

    我正在 Grafana 上开发基于 Loki 的仪表板 我有一个用于在 Loki 跟踪日志中搜索文本的面板 当前查询如下 job abc service searchTrace json line format if trace messa
  • 获取 rfc7517 格式的 JWKS for Firebase

    我正在使用 Firebase 对我的应用程序中的用户进行身份验证 Firebase 生成一个 JWT 令牌 我需要在我的服务器上对其进行身份验证 我使用 tyk io 来做到这一点 Tyk 支持这些令牌 但要求公钥的数据源位于https w
  • Swagger 将 IFormFile 参数列为“对象”类型

    我有一个控制器 它请求一个包含 IFormFile 作为其属性之一的模型 对于请求描述 Swagger UI 我使用 Swashbuckle 和 OpenApi 3 0 for NET Core 将文件属性的类型列出为类型对象 有没有办法让