我有一个包含某些方法的控制器。该控制器位于单独的组件中。这样的想法是,如果其他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未绑定函数选择加入?