【发布时间】:2016-04-13 04:14:01
【问题描述】:
我在这里尝试了本文中描述的解决方案: Original article
如前所述:
var defaultConventions = ODataRoutingConventions.CreateDefault();
var conventions = defaultConventions.Except(
defaultConventions.OfType<MetadataRoutingConvention>());
config.MapODataServiceRoute(
routeName: "ODataRoute",
routePrefix: null,
model: model,
pathHandler: new DefaultODataPathHandler(),
routingConventions: conventions);
一切正常,没有更多元数据信息。标准请求工作正常,但未绑定的操作和功能不再工作,我收到 404 响应。
我将操作注册到 Odata 模型构建器,例如:
var validateEmailAction = builder.Action("ValidateEmail");
validateEmailAction.Parameter<string>("Email");
在控制器中我有:
[HttpPost]
[ODataRoute("ValidateEmail")]
public async Task<IHttpActionResult> ValidateEmail(ODataActionParameters parameters)
{
}
我有什么建议可以隐藏 Odatametada 但仍然有动作/功能吗?
【问题讨论】:
-
您是否错过了 url 中的命名空间或忘记开启 EnableUnqualifiedNameCall?
标签: c# asp.net-web-api odata asp.net-web-api-odata