使用命名元组作为输入参数的 API 调用

我的 API 端点之一需要一个包含命名元组列表的对象。输入对象的一个示例是:


public enum Countries { Afghanistan, Albania, Algeria, Andorra /*...*/ }


public class InputModel 

{

    public List<(Countries Country, bool Visited)> CountriesVisited { get; set; }

}

当我加载 Swagger 时,示例输入值不使用命名元组,而是使用item1和item2。例如:


"countriesVisited": [

    {

        "item1": "Afghanistan",

        "item2": "false"

    }

]

当我调用端点时,似乎我必须使用item1和item2让它识别已指定的值。使用命名元组(country和visited)会导致指定值被忽略。


是否可以更改此设置,以便当我调用端点时,我可以使用命名元组名称,而不是通用名称item1和item2?


Country我知道我可以通过创建一个带有和作为属性的类来解决这个问题Visited,但是如果可能的话,我想避免为这样的事情创建自定义类。


Smart猫小萌
浏览 104回答 1
1回答

慕容3067478

命名元组是一种语法糖,因此您所看到的内容是预期的。
打开App,查看更多内容
随时随地看视频慕课网APP