[英]IAsyncQueryProvider build errors after migrating to .Net Core v3.1
将项目从 .NET Core 2.2 迁移到版本 3.1 后,IAsyncEnumerator 和 IAsyncQueryProvider 出现错误:
我设法解决了与 IAsyncEnumerable 相关的第一个问题,下面是我在谷歌上找到的此修复程序:
<Target Name="ChangeAliasesOfReactiveExtensions" BeforeTargets="FindReferenceAssembliesForReferences;ResolveReferences">
<ItemGroup>
<ReferencePath Condition="'%(FileName)' == 'System.Interactive.Async'">
<Aliases>ix</Aliases>
</ReferencePath>
</ItemGroup>
</Target>
但是,我找不到第二个问题的任何解决方案。
我收到错误的代码示例:
internal class TestAsyncQueryProvider<TEntity> : IAsyncQueryProvider
{
private readonly IQueryProvider _inner;
internal TestAsyncQueryProvider(IQueryProvider inner)
{
_inner = inner;
}
public IQueryable CreateQuery(Expression expression)
{
return new TestAsyncEnumerable<TEntity>(expression);
}
public IQueryable<TElement> CreateQuery<TElement>(Expression expression)
{
return new TestAsyncEnumerable<TElement>(expression);
}
public object Execute(Expression expression)
{
return _inner.Execute(expression);
}
public TResult Execute<TResult>(Expression expression)
{
return _inner.Execute<TResult>(expression);
}
public IAsyncEnumerable<TResult> ExecuteAsync<TResult>(Expression expression)
{
return new TestAsyncEnumerable<TResult>(expression);
}
public Task<TResult> ExecuteAsync<TResult>(Expression expression, CancellationToken cancellationToken)
{
return Task.FromResult(Execute<TResult>(expression));
}
}
我想知道是否有人遇到过类似的问题并设法解决了这些问题。 另外,值得一提的是,我仍在使用 EF Core v2.x 并且尚未将其迁移到版本 3。
IdentityServer 更新中的 Execute 接口已替换为 ExecuteAsync。
有一个库已成功将此模拟实现升级到 .NET Core 3.0:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.