asp.net-core - 如何使用 ASP.NET 5 注册 OData

标签 asp.net-core odata

我有一个 ASP.NET 5 应用程序,我想在其中使用 OData v4。

这是我尝试过的:

1.我导入了以下nuget包:

"Microsoft.AspNet.WebApi": "5.2.3",
"Microsoft.AspNet.OData": "5.7.0",
"Microsoft.AspNet.Hosting": "1.0.0-rc1-final"

2.在Startup.Configure方法中调用此方法

GlobalConfiguration.Configure(ConfigOData);

3.最后这是 OData 配置

private static void ConfigOData(HttpConfiguration config)
{
    ODataConventionModelBuilder builder = new ODataConventionModelBuilder();

    var EDM = builder.GetEdmModel();

    //OData v4.0
    config.MapODataServiceRoute("odata", "odata", EDM,
        new DefaultODataPathHandler(),
        conventions,
        new DefaultODataBatchHandler(GlobalConfiguration.DefaultServer));
}

现在 OData 调用正在由 MVC 的路由配置处理(很可能是因为我没有正确向 ASP.NET 5 注册 OData)。

有人可以帮我解决这个问题吗?

最佳答案

以下是我们如何使用 ASP.NET Core RC2 OData. 配置它

namespace ODataSample
{
    using Microsoft.AspNetCore.OData.Extensions;
    using Microsoft.AspNetCore.Builder;
    using Microsoft.Extensions.DependencyInjection;
    using ODataSample.Models;

    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();
            services.AddOData<ISampleService>();
        }

        public void Configure(IApplicationBuilder app)
        {
            app.UseOData("odata");
            app.UseMvc();
        }
    }
}

您可以自行尝试以下方法。您需要 the .NET Core SDK installed.

git clone git@github.com:bigfont/WebApi.git

cd WebApi\vNext\src\Microsoft.AspNetCore.OData
dotnet restore

cd ..\..\samples\ODataSample.BigFont\
dotnet restore
dotnet run

这是 http://localhost:5000/odata 的结果

Result

链接

关于asp.net-core - 如何使用 ASP.NET 5 注册 OData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33986163/

相关文章:

c# - Asp.net 5 web api返回状态代码和正文

c# - 具有现有 IoC 容器和环境的 ASP.NET Core?

json - 在SenseNet设置中使用JSON数组

authentication - Java 中的 Bing 搜索 API Azure 市场身份验证

Asp.Net VNext Windows 服务

asp.net-mvc - 带有查询字符串参数的 asp.net core mvc 应用程序表单帖子

c# - Entity Framework 代码首先添加记录错误

c# - Windows Phone 7 上的 OData

odata - SAPUI5 OData 模型中的应用程序数据如何写回后端系统

asp.net-mvc - Web API OData Controller 和授权属性