我有此OData路由正在工作:
[ODataRoute("ClassA/{classAId}/ClassB/{classBId}/ClassC")]
但是当我在末尾添加一个参数时,不再找到它并返回404。
[ODataRoute("ClassA/{ClassAId}/ClassB/{ClassBId}/ClassC/{classCId}")]
关于可能出什么问题的任何建议?这个问题的答案可能是验证路线格式并列出其运行要求,因为我显然遗漏了一些东西。
答案 0 :(得分:2)
哦,发现了我自己的问题。问题不是完全有效的路由定义。这是我用来查询路线的uri。
我正在使用以下格式查询:ClassA("ClassAId")/ClassB("ClassBId")/ClassC("classCId")
问题出在classCId的类型上,它是一个整数,而不是字符串。因此,类型问题可以返回未找到的odata路由错误。
因此,更正uri解决了问题:
ClassA("ClassAId")/ClassB("ClassBId")/ClassC(classCId)