None of the constructors found with 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' on type 'Nop.Admin.Controllers.TicketsController' ca

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
5 years ago

None of the constructors found with 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' on type 'Nop.Admin.Controllers.TicketsController' can be invoked with the available services and parameters:
Cannot resolve parameter 'Nop.Services.Tickets.ITicketService ticketService' of constructor 'Void .ctor(Nop.Services.Tickets.ITicketService, Nop.Services.Configuration.SettingService)'.


Hi. I get this error when I call my controller.
I read on several forums. We say that you have to configure Autofac. I do not know where to configure it.

Here is my class Service


public class TicketService : ITicketService
{
        
        private readonly IRepository<OrderItem> _orderItemRepository;
        private readonly IRepository<Ticket> _ticketRepository;
        private readonly IOrderService _orderService;
        private readonly ILogger _logger;

        public TicketService( IRepository<Ticket> ticketRepository,
            IRepository<OrderItem> orderItemRepository,IOrderService orderService,ILogger logger)
        {
            _ticketRepository = ticketRepository;
            _orderItemRepository = orderItemRepository;
            _logger = logger;
            _orderService = orderService;
        }

        public Ticket GetTicketById(int id)
        {
            return _ticketRepository.GetById(id);
        }

        public void MarkTicketAsPaid(Ticket ticket)
        {
            if(ticket!=null)
            {
                var orderItem = _orderItemRepository.GetById(ticket.OrderItemId);
                var order = orderItem.Order;
                order.OrderStatus = OrderStatus.Complete;
                _orderService.UpdateOrder(order);
            }
            else
            {
                _logger.Error(string.Format("Ticket not found for MarkAsPaid {0}", ticket.Id));
            }
        }

}



My controller


public class TicketsController : BaseAdminController
{
        #region Fields

        private readonly ITicketService _ticketService;
        private readonly ISettingService _settingService;

        #endregion

    
        public TicketsController(ITicketService ticketService, SettingService settingService)
        {
            _ticketService = ticketService;
            _settingService = settingService;
        }

}
4 years ago
Please see this link https://www.nopcommerce.com/boards/t/58290/dependency-injection.aspx
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.