odata - OData 未绑定功能选择加入
问题描述
我有一个包含某些方法的控制器。该控制器安装在一个单独的组件中。这个想法是,如果其他 API 想要将此功能用作未绑定的函数,则可以选择加入。
问题是,如果我不使用 ODataConventionModelBuilder OData 实现此功能,则会返回以下错误:
System.AggregateException
HResult=0x80131500
Message=One or more errors occurred.
Source=<Cannot evaluate the exception source>
StackTrace:
<Cannot evaluate the exception stack trace>
Inner Exception 1:
InvalidOperationException: The path template 'TestFunction' on the action 'TestFunction' in controller 'OptInFunctions' is not a valid OData path template. Resource not found for the segment 'TestFunction'
如果我从函数中删除 ODataRouteAttribute,则 OData 在启动期间不会返回错误,但在我想调用该函数时会返回 404。
我的具有选择加入方法的控制器看起来像这样:
public class OptInFunctions : ODataController
{
[HttpGet]
[ODataRoute("TestFunction")]
public ActionResult<bool> TestFunction()
{
return Ok(true);
}
}
如何使 OData 未绑定函数选择加入?
解决方案
推荐阅读
- amazon-web-services - 当我登录到不同的图像存储库时,从哪里提取 docker 图像?
- ruby-on-rails - Ruby on Rails 项目图像显示问题 - 在网页上
- cakephp-3.0 - CakePHP 3.x - 资产添加版本而不是时间戳
- python - 为什么我的尝试除了不能正常工作?蟒蛇 3
- php - 隐藏 Composer 安装命令的输出
- java - Java:打印数组元素并插入换行符
- awk - 需要使用 awk 从 HL7 文件中检索值
- javascript - Javascript:从子字符串中查找数组中最相关的字符串
- python - 根据条件在熊猫数据框中的多行中设置值
- javascript - JSON.stringify 没有对整个对象进行字符串化