Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/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
Asp.net web api Web API虚张声势/虚张声势-将字段链接到数据库查找列表_Asp.net Web Api_Swagger_Swashbuckle - Fatal编程技术网

Asp.net web api Web API虚张声势/虚张声势-将字段链接到数据库查找列表

Asp.net web api Web API虚张声势/虚张声势-将字段链接到数据库查找列表,asp.net-web-api,swagger,swashbuckle,Asp.net Web Api,Swagger,Swashbuckle,使用Swashbuckle识别特定字段的值应该是数据库查找列表中的字符串的最佳方法是什么 我想我在寻找的是一种装饰模型属性的方法,表明它是一个枚举,但不实际将类型声明为一个枚举 有效值列表可能仅包含5到10项。但是,它们不能在我的应用程序中定义为实际的枚举,因为它们可以通过CMS进行编辑,并存储在数据库表中 目前,我刚刚将这些属性定义为字符串,然后提供了一些文档来指示可以使用哪个端点来检索有效值列表 这似乎不是一个非常正确的方法。我真的想更好地锁定它,因此对于试图使用api的开发人员来说,没有任

使用Swashbuckle识别特定字段的值应该是数据库查找列表中的字符串的最佳方法是什么

我想我在寻找的是一种装饰模型属性的方法,表明它是一个枚举,但不实际将类型声明为一个枚举

有效值列表可能仅包含5到10项。但是,它们不能在我的应用程序中定义为实际的枚举,因为它们可以通过CMS进行编辑,并存储在数据库表中

目前,我刚刚将这些属性定义为字符串,然后提供了一些文档来指示可以使用哪个端点来检索有效值列表


这似乎不是一个非常正确的方法。我真的想更好地锁定它,因此对于试图使用api的开发人员来说,没有任何混淆的余地。

我已经用
模式
验证关键字做了类似的事情:

您的swagger.json将如下所示:

"Transparency": {
  "type": "string",
  "pattern": "^(high|medium|low)"
},
为此,您有两种选择:

  • 在你的C#代码上你需要
[正则表达式(^(高|中|低)]

公共字符串透明度{get;set;}

  • 或者在运行时使用iDocumentFilter添加模式

谢谢。这肯定会对某些属性有所帮助。您找到解决方案了吗?@Edgaras没有,我没有找到一个好方法来实现这一点,所以只提供了额外的文档来解释从何处获取允许的值。它不是一个拥有大量受众的api,因此也不是什么问题。