пропуск данных и топ выпуск - PullRequest
0 голосов
/ 22 февраля 2019

Я реализовал Abp.OData в соответствии с документацией.Например

http://localhost:21021/odata/regions?$count=true работает без проблем.Он возвращает;

{"result":[{"id":1,"name":"Gebze"},{"id":2,"name":"Ankara"},{"id":3,"name":"Bursa"}],"targetUrl":null,"success":true,"error":null,"unAuthorizedRequest":false,"__abp":true}

Но http://localhost:21021/odata/regions?$count=true&$skip=0&$top=12 не работает.

Возвращает;

{"result":null,"targetUrl":null,"success":false,"error":{"code":0,"message":"Sayfa işlenirken sunucu tarafında beklenmedik bir hata oluştu!","details":null,"validationErrors":null},"unAuthorizedRequest":false,"__abp":true}

Мой файл запуска:


И мой контроллер oData:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Abp.AspNetCore.OData.Controllers;
using Abp.Dependency;
using Abp.Domain.Repositories;
using Microsoft.AspNet.OData;
using TSE.Merkez.KalIsteks;

namespace TSE.Merkez.Web.Host.Controllers
{
    [EnableQuery]
    public class RegionsController : AbpODataEntityController<Region.Region>, ITransientDependency
    {
        public RegionsController(IRepository<Region.Region> repository) : base(repository)
        {
        }
        //[EnableQuery]
        //public override IQueryable<Region.Region> Get()
        //{

        //    return base.Get();
        //}
    }
}

Я получаю сообщение об ошибке, показанное ниже

ОШИБКА 2019-02-25 12: 10: 21,218[10] Mvc.ExceptionHandling.AbpExceptionFilter - не вызывал метод Complete для единицы работы.Abp.AbpException: не вызывается метод Complete единицы работы.в Abp.Domain.Uow.InnerUnitOfWorkCompleteHandle.Dispose () в Abp.AspNetCore.Mvc.Uow.AbpUowActionFilter.d__4.MoveNext () --- Конец трассировки стека из предыдущего расположения, где было сгенерировано исключение --- в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача-задача) в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (задача-задача) в System.Runtime.CompilerServices.TaskAwaiter.GetResont.NeInInCoreInCoreInCore. ()) --- Конец трассировки стека от предыдущего местоположения, где было сгенерировано исключение --- в System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () в Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow (контекст ActionExecutedContext) в Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next (State & next, Scope & scope, Object & scope, Boolean & isCompleted) в Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__13.MoveNext () --- Конец трассировки стека из предыдущего расположениягде исключение было сгенерировано --- в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача-задача) в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (задача-задача) в System.Runtime.CompilerRaRaTaServices.*

Есть идеи?Где я могу пойти не так?Заранее спасибо ..

1 Ответ

0 голосов
/ 25 февраля 2019

Хорошо.Проблема была решена.Это было из-за неправильного построения сущности.Я заставил abp создать сущность с дополнительным свойством Id, которое приходит из моей старой таблицы.Однако столбец идентификатора в объекте зарезервирован для платформы ABP.Я не должен был заставлять фреймворк использовать мое старое свойство Id.Я перенес старые данные Id в другой столбец объекта, и проблема решена.С уважением.

...