System.InvalidOperationException: Null TypeMapping in Sql Tree


问题提示:System.InvalidOperationException: Null TypeMapping in Sql Tree

日志记录:

System.InvalidOperationException: Null TypeMapping in Sql Tree
   at Microsoft.EntityFrameworkCore.Query.RelationalSqlTranslatingExpressionVisitor.SqlTypeMappingVerifyingExpressionVisitor.VisitExtension(Expression node)
   at System.Linq.Expressions.Expression.Accept(ExpressionVisitor visitor)
   at Microsoft.EntityFrameworkCore.Query.SqlExpressions.SqlBinaryExpression.VisitChildren(ExpressionVisitor visitor)
   at System.Linq.Expressions.ExpressionVisitor.VisitExtension(Expression node)
   at Microsoft.EntityFrameworkCore.Query.RelationalSqlTranslatingExpressionVisitor.SqlTypeMappingVerifyingExpressionVisitor.VisitExtension(Expression node)
   at System.Linq.Expressions.Expression.Accept(ExpressionVisitor visitor)
   at Microsoft.EntityFrameworkCore.Query.RelationalSqlTranslatingExpressionVisitor.Translate(Expression expression)
   at Microsoft.EntityFrameworkCore.Query.RelationalQueryableMethodTranslatingExpressionVisitor.TranslateExpression(Expression expression)
   at Microsoft.EntityFrameworkCore.Query.RelationalQueryableMethodTranslatingExpressionVisitor.TranslateLambdaExpression(ShapedQueryExpression shapedQueryExpression, LambdaExpression lambdaExpression)
   at Microsoft.EntityFrameworkCore.Query.RelationalQueryableMethodTranslatingExpressionVisitor.TranslateWhere(ShapedQueryExpression source, LambdaExpression predicate)
   at Microsoft.EntityFrameworkCore.Query.QueryableMethodTranslatingExpressionVisitor.VisitMethodCall(MethodCallExpression methodCallExpression)
   at Microsoft.EntityFrameworkCore.Query.RelationalQueryableMethodTranslatingExpressionVisitor.VisitMethodCall(MethodCallExpression methodCallExpression)
   at Microsoft.EntityFrameworkCore.Query.QueryableMethodTranslatingExpressionVisitor.VisitMethodCall(MethodCallExpression methodCallExpression)
   at Microsoft.EntityFrameworkCore.Query.RelationalQueryableMethodTranslatingExpressionVisitor.VisitMethodCall(MethodCallExpression methodCallExpression)
   at Microsoft.EntityFramewor...

为什么会出现?我这边的操作是拖拽修改顺序

实现代码:

public async Task MoveOrganizationUnit(MoveNodeInput<long> input)
        {
            var source = await _organizationUnitRepository.GetAsync(input.SourceId);
            var query = _organizationUnitRepository.GetAll();
            await Task.Run(() =>
            {
                _organizationUnitRepository.MoveNode<ExtendedOrganizationUnit, long, long?>(input.SourceId, input.TargetId, input.DropPosition, query);
            });
        }

MoveNode方法:

public static TEntity MoveNode<TEntity, TPrimaryKey, TParentKey>(this IRepository<TEntity, TPrimaryKey> repository, TPrimaryKey sourceNodeId, TParentKey targetNodeId, NodeMoveType moveType, IQueryable<TEntity> query = null)
            where TEntity : class, ISimpleTreeEntity<TEntity, TPrimaryKey, TParentKey>, IEntity<TPrimaryKey>
        {
            repository.ResetNodes<TEntity, TPrimaryKey, TParentKey>(null, query);
            var sourceNode = repository.Get(sourceNodeId);
            var targetNode = targetNodeId == null ? null : repository.Get((TPrimaryKey)(object)targetNodeId);
            return repository.MoveNode<TEntity, TPrimaryKey, TParentKey>(sourceNode, targetNode, moveType, query);
        }

该问题待解决中。。。。。。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM