she*_*ira 11 c# .net-core .net-core-3.0
我正在尝试将项目从 .net core 2.2 迁移到 3.0。
我收到错误:
错误 CS0433 类型 'IAsyncEnumerable< T >' 存在于 'System.Interactive.Async, Version=3.2.0.0, Culture=neutral, PublicKeyToken=94bc3704cddfc263' 和 'System.Runtime, Version=4.2.1.0
我在这里尝试了一个建议:https : //github.com/aspnet/EntityFrameworkCore/issues/15047,它建议强制更新到 System.Interactive.Async 4.0.0。(我将此引用添加到我的项目中)。
但是我有另一个错误:引用类型“IAsyncEnumerable<>”声称它在“System.Interactive.Async”中定义,但找不到
我正在使用 IAsyncQueryProvider,它似乎导致了问题。
我在 2.2 中没有这些问题,目前我找不到任何解决方法。
我还尝试强行更新到 System.Runtime 4.3.1,但没有帮助。
小智 6
作为在 .NET Core 2.2 上偶然发现这一点但没有迁移到 3+ 的人,我找到了针对上述相同问题的另一种解决方案。自此评论以来,引用的项目文件已被修改,因此这是一个直接链接。
就我而言,我将此目标添加到项目文件中:
<Target Name="AddAssemblyAliasToReactiveAsync"
AfterTargets="ResolveAssemblyReferences"
Condition="'$(TargetFramework)' == 'netcoreapp2.2'">
<ItemGroup>
<ReferencePath Condition=" '%(FileName)' == 'System.Interactive.Async' ">
<Aliases>reactive</Aliases>
</ReferencePath>
</ItemGroup>
</Target>
Run Code Online (Sandbox Code Playgroud)
Panatiotis 的建议有效,我添加了对 Microsoft.EntityFrameworkCore 3.0 的引用并且它起作用了。对于我的情况,.NET Core 2.2 中不需要此参考。
归档时间: |
|
查看次数: |
4894 次 |
最近记录: |