找不到ODataRoute

时间:2020-08-01 10:14:51

标签: .net-core odata

我有此OData路由正在工作:

[ODataRoute("ClassA/{classAId}/ClassB/{classBId}/ClassC")]

但是当我在末尾添加一个参数时,不再找到它并返回404。

[ODataRoute("ClassA/{ClassAId}/ClassB/{ClassBId}/ClassC/{classCId}")]

关于可能出什么问题的任何建议?这个问题的答案可能是验证路线格式并列出其运行要求,因为我显然遗漏了一些东西。

1 个答案:

答案 0 :(得分:2)

哦,发现了我自己的问题。问题不是完全有效的路由定义。这是我用来查询路线的uri。

我正在使用以下格式查询:ClassA("ClassAId")/ClassB("ClassBId")/ClassC("classCId")

问题出在classCId的类型上,它是一个整数,而不是字符串。因此,类型问题可以返回未找到的odata路由错误。

因此,更正uri解决了问题: ClassA("ClassAId")/ClassB("ClassBId")/ClassC(classCId)