config.MapODataServiceRoute error
本文关键字:error MapODataServiceRoute config | 更新日期: 2023-09-27 18:32:31
我目前正在遵循本指南 ->链接到 asp.net 网站
正如指南所说,我通过nuget控制台添加了所有必要的软件包,并将必要的使用添加到WebApIConfig文件中。但是当我添加端点注册方法 VS 时给了我一个错误。
我添加的方法:
public static void Register(HttpConfiguration config)
{
// New code:
ODataModelBuilder builder = new ODataConventionModelBuilder();
builder.EntitySet<Product>("Products");
config.MapODataServiceRoute(
routeName: "ODataRoute",
routePrefix: null,
model: builder.GetEdmModel());
}
错误VS给了我:
Error 1 'System.Web.Http.HttpConfiguration' does not contain a definition for 'MapODataServiceRoute' and no extension method 'MapODataServiceRoute' accepting a first argument of type 'System.Web.Http.HttpConfiguration' could be found (are you missing a using directive or an assembly reference?) C:'Users'rvcamp'Desktop'odataTest'odataTest'App_Start'WebApiConfig.cs 29 20 odataTest
我检查了指南的评论,但没有提到此错误,我也无法解决该错误。我做错了什么?
我刚刚遇到了这个问题。非常令人沮丧。
我通过在代码页顶部的引用中添加它来解决它
using System.Web.OData.Extensions;
右键单击该方法也没有显示解析菜单项。
重新安装所有内容并没有为我解决任何问题。
MapODataServiceRoute 在 Routes Collection 中可用,因此下面的代码可以
config.Routes.MapODataServiceRoute(
"odata",
null,
GetEdmModel(),
new DefaultODataBatchHandler(GlobalConfiguration.DefaultServer));
FOR OData V3
- 安装 Microsoft.AspNet。网络图片。奥达塔
- 添加
using System.Web.Http.OData.Builder;
和using System.Web.Http.OData.Extensions;
- 像
config.Routes.MapODataServiceRoute(...)
一样使用
对于 OData V4
- 安装 Microsoft.AspNet.OData
- 添加
using System.Web.OData.Builder;
和using System.Web.OData.Extensions;
- 像
config.MapODataServiceRoute(...)
一样使用
不要卡在WebApi word上,它们都是针对Web api的。
如果您已升级到 Microsoft.AspNet.OData 7.0.0
则您正在寻找的命名空间是:
using Microsoft.AspNet.OData.Extensions;
MapODataServiceRoute
是扩展方法。因此,要使用它,需要对其命名空间的引用。对我来说,它是通过引用来修复的:
using System.Web.Http.OData.Extensions;
我通过打开包管理器控制台,将默认项目设置为提供错误消息的项目来解决此问题,然后:
Install-Package Microsoft.AspNet.WebApi.OData