gpt4 book ai didi

c# - 如何从 swagger.json 中删除反引号

转载 作者:行者123 更新时间:2023-12-04 09:36:56 30 4
gpt4 key购买 nike

在我用 ASPNET Core 3.1 编写的 Web 应用程序中,使用 Swashbuckle.AspNetCore (5.2) 来生成 OpenApi。我已经打开了生成派生类

GeneratePolymorphicSchemas()
在 swagger.json 中,我得到带有反引号 (`) 的类。所以我的一个类
public abstract class CommandResult
{
public abstract IsSuccess {get;}
}

public class SuccessCommandResult
{
public override IsSuccess => true;
}

public class SuccessCommandResult<TData> : SuccessCommand
{
public TData Data {get;set;}
}
对于这些类中的最后一个,我将它们的名称命名为“SuccessCommandResult``1”(有单反引号字符,我加倍了以保持漂亮的帖子免受攻击),这在生成 TypeScript api 客户端时存在问题。对于生成前端客户端,我使用 open-api-generator .
我的问题我如何解决生成问题?

最佳答案

OpenApi 本身并不支持泛型,但您可以使用 SchemaId 自定义生成的名称。方法,例如

c.SchemaId(t => t.FullName.Contains('`') 
? t.FullName.Substring(0, t.FullName.IndexOf('`')) + "OfT"
: t.FullName);
以上其实是来自 official documentation ,请参阅“修改生成的架构”。

关于c# - 如何从 swagger.json 中删除反引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62529901/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com