Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .NETCore5中的MicrosoftOData-将OData添加到服务中会抛出一个缺少的using指令,但包仍然存在_C#_.net Core_Odata_Microsoft Odata - Fatal编程技术网

C# .NETCore5中的MicrosoftOData-将OData添加到服务中会抛出一个缺少的using指令,但包仍然存在

C# .NETCore5中的MicrosoftOData-将OData添加到服务中会抛出一个缺少的using指令,但包仍然存在,c#,.net-core,odata,microsoft-odata,C#,.net Core,Odata,Microsoft Odata,我正在.NETCore5.0中开发。() 我用VisualStudio中最简单的API项目回到了绝对最低限度 今年早些时候,我在我的项目中使用了它,它运行在.NETCore5.0上。请参见上面的教程 在这个项目中,我创建了一个新项目。然后我去NuGet获取包“Microsoft.AspNet.OData”版本7.4.1 然后,我将以下内容添加到启动文件中 public void ConfigureServices(IServiceCollection services) { // Add

我正在.NETCore5.0中开发。()

我用VisualStudio中最简单的API项目回到了绝对最低限度

今年早些时候,我在我的项目中使用了它,它运行在.NETCore5.0上。请参见上面的教程

在这个项目中,我创建了一个新项目。然后我去NuGet获取包“Microsoft.AspNet.OData”版本7.4.1

然后,我将以下内容添加到启动文件中

public void ConfigureServices(IServiceCollection services)
{
    // Add framework services.
    services.AddCors();
    services.AddControllers();

    services.AddOData();  //THIS ONE
}
我添加了“services.AddOData”并抛出了错误

错误CS1061“IServiceCollection”不包含“AddOData”的定义,并且找不到接受“IServiceCollection”类型的第一个参数的可访问扩展方法“AddOData”(是否缺少using指令或程序集引用?).JobsLedger.API C:\Users/../JobsLedger.API\Startup.cs 35 Active

我已经添加了此服务所需的软件包。几个月前我就让它工作了

您是否需要添加新的软件包


我做错了什么?或者这是一个我不知道的“突破性变化”

如果您使用的是.net5.0,它需要odata 8.0预览版

根据本文,在rc2中,Sam Xu做了一个突破性的改变

“AddOData已从ISerivceCollection上的扩展更改为IMvc(核心)生成器上的扩展。 首先调用AddControllers(),然后调用AddOData(),迁移很容易。


您是否使用Microsoft.AspNet.OData.Extensions添加了
在你的Startup.cs中?我解决了这个问题,回到了我原来的项目实际构建的地方,然后再次升级包。这一次它现在构建了,是的,我注意到我确实在上面建议的using语句中已经有了建议。您不应该使用
Microsoft.AspNetCore.OData
?注意:8.0版预览版有一些突破性的更改
services.AddControllers()
        .AddOData(opt => opt.AddModel("odata", GetEdmModel()));