2016-05-15 83 views
2

这里是我aspBoilerpLate模块在应用层着访问的WebAPI出现错误

[DependsOn(typeof(TransitCoreModule), typeof(AbpAutoMapperModule))] 
    public class TransitApplicationModule : AbpModule 
    { 
     public override void Initialize() 
     { 
      IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly()); 
     } 
    } 

,这里是我的webapimodule

[DependsOn(typeof(AbpWebApiModule), typeof(TransitApplicationModule))] 
    public class TransitWebApiModule : AbpModule 
    { 
     public override void Initialize() 
     { 
      IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly()); 


      DynamicApiControllerBuilder 
       .ForAll<IApplicationService>(typeof(TransitApplicationModule).Assembly, "app") 
       .Build(); 

      Configuration.Modules.AbpWebApi().HttpConfiguration.Filters.Add(new HostAuthenticationFilter("Bearer")); 
     } 
    } 

,这里是我的AppService服务

public class MeetingAppService : TransitAppServiceBase, IMeetingAppService 
    { 
     private readonly IMeetingManager _meetingManager; 
     private readonly IRepository<Meeting.Meeting, Guid> _meetingRepository; 
     public MeetingAppService (IMeetingManager meetingManager, IRepository<Meeting.Meeting, Guid> meetingRepository) 
     { 
      _meetingManager = meetingManager; 
      _meetingRepository = meetingRepository; 
     } 
     public Task Cancel (EntityRequestInput<Guid> input) 
     { 
      throw new NotImplementedException(); 
     } 

     public async Task Create (CreateMeetingInput input) 
     { 
      var meeting= Meeting.Meeting.Create(AbpSession.GetTenantId(), input.Subject, input.Title, input.Date, input.StartTime, input.EndTime, input.Secretary, input.Description, input.Agenda); 
      await _meetingManager.CreateAsync(meeting); 
     } 

     public async Task<MeetingDetailOutput> GetDetail (EntityRequestInput<Guid> input) 
     { 
      var meeting = await _meetingRepository 
       .GetAll() 
       .Where(m => m.Id == input.Id) 
       .FirstOrDefaultAsync(); 

      return meeting.MapTo<MeetingDetailOutput>(); 

     } 

     public async Task<ListResultOutput<MeetingListDto>> GetList (GetMeetingListInput input) 
     { 
      var meetings = await _meetingRepository.GetAll() 
       .WhereIf(!input.IncludeCanceledMeetings,m=>!m.IsCancelled) 
       .ToListAsync(); 


      return new ListResultOutput<MeetingListDto>(meetings.MapTo<List<MeetingListDto>>()); 

     } 
    } 

当我想访问http://localhost:6634/api/services/app/meeting/Create 我得到错误500消息=发生错误。 我找不到调试它的方法 我该如何调试?

回答

0

如果您在浏览器中粘贴此URL,那么您正在尝试使用GET请求访问api服务。 ABP API默认使用POST请求。

我建议你试试Postman Chrome Extension来调试api。

-1

有时它不明白请求来自有效的来源。

请尝试以下代码服务:

[AbpAuthorize] 

public class MeetingAppService : TransitAppServiceBase, IMeetingAppService 
相关问题