Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Swagger Codegen IO:更改服务命名约定和昵称_C#_.net_Angular_Typescript_Swagger Codegen - Fatal编程技术网

C# Swagger Codegen IO:更改服务命名约定和昵称

C# Swagger Codegen IO:更改服务命名约定和昵称,c#,.net,angular,typescript,swagger-codegen,C#,.net,Angular,Typescript,Swagger Codegen,在创建Angular API服务代理时,是否有覆盖Swagger IO CodeGen命名约定的方法 它的命名公式是:API+控制器名称+控制器方法+HTTP操作 public apiProductGetProductByProductIdGet(productNumber?: string, observe?: 'body', reportProgress?: boolean): Observable<ProductResponse>; 您正在查找操作ID属性: operati

在创建Angular API服务代理时,是否有覆盖Swagger IO CodeGen命名约定的方法

它的命名公式是:API+控制器名称+控制器方法+HTTP操作

public apiProductGetProductByProductIdGet(productNumber?: string, observe?: 'body', reportProgress?: boolean): Observable<ProductResponse>;

您正在查找
操作ID
属性:

operationId
是一个可选的唯一字符串,用于标识 活动如果提供,这些ID在所有操作中必须是唯一的 在API中描述

例如:

/users:
  get:
    operationId: getUsers
    summary: Gets all users
    ...
  post:
    operationId: addUser
    summary: Adds a new user
    ...
/user/{id}:
  get:
    operationId: getUserById
    summary: Gets a user by user ID
    ...
如果使用,可以通过以下几种不同的方式指定operationId:

[HttpGet("{id:int}", Name = nameof(GetProductById))]
public IActionResult GetProductById(int id) // operationId = "GetProductById"'


另请参见

您还可以使用标记更改生成的客户端SDK服务命名约定(如果您和我一样,希望避免与客户端服务发生冲突)

您可以使用
用户api
的标记,而不是将标签标记为
用户
,并让客户端SDK将服务名称生成为
用户服务
,生成的库服务将命名为
用户api服务


是的,我可以看出这是个问题。您还可能会看到swagger hub编辑器UI是否有任何选项可以基于方法名称或其他内容对端点进行某种大规模更新。我知道cli有一些关于前缀/后缀的选项,但如果不进行一定程度的手动操作,可能无法让您达到需要我的位置。您好,我还有另一个问题,我们有一组不同的控制器,其方法称为“GetAll”,现在在swagger io中,其给出错误,路径处的语义错误。/api/Product.get.operationId操作必须具有唯一的operationId,那么这是否意味着,不同的控制器、产品、客户、帐户不能有一个名为Get All的方法名?它至少生成了swagger codegen代理,但显示了swagger io中的错误,我们用方法名命名代理我还有一个问题,
[HttpGet("{id:int}", Name = nameof(GetProductById))]
public IActionResult GetProductById(int id) // operationId = "GetProductById"'
[HttpGet("{id:int}", Name = "GetProductById")]
public IActionResult GetProductById(int id) // operationId = "GetProductById"'