你的位置:首页 > ASP.net教程

[ASP.net教程]OData V4 系列 Action 与 Function


       OData 学习目录

       了解过WebApi的都知道,WebApi默认方法 Get、Post、Put,如果增加其它过多Post方法即不能识别,还需增加其它配制,请求的Url还需加上Controller及Action,与Restful设计不一致,Odata可以解决这样的问题。

    配制路由服务       

      builder.Namespace = "ProductService";      builder.EntityType<Product>().Collection        .Function("MostExpensive") //函数路由        .Returns<double>();      builder.Namespace = "ProductService";      builder.EntityType<Product>()        .Action("Rate") //Action路由        .Parameter<int>("Rating");

         通过Get请求 MostExpensive 会出现如下错误
        

              修改Web.config   <modules runAllManagedModulesForAllRequests="true"></modules>

              

             

               Action 请求              

       $.ajax({        url: "/Odata/Products(" + id + ")/ProductService.Rate",        type: "POST",        contentType: "application/json; charset=utf-8",        dataType: "JSON",        data: JSON.stringify({ Rating: 5 }),        success: function (r) {          debugger;        },        error: function (e) {          debugger;        }      });