WebApi с Unity, убедитесь, что контроллер имеет параметры без параметров - PullRequest
0 голосов
/ 20 октября 2019

У меня простейший контроллер API evet, так же как и Unity, но я запускаю отладку и отправляю запрос через http://localhost:53556/MebAPI/GetStudents

. На белом экране появляется сообщение: {"Message":"An error has occurred.","ExceptionMessage":"An error occurred when trying to create a controller of type 'MebAPIController'. Make sure that the controller has a parameterless public constructor.","ExceptionType":"System.InvalidOperationException

Iискал знакомые посты и проверял мои единства, не мог найти причину этого ..

UnityConfig:

public static class UnityConfig
{
    public static void RegisterComponents()
    {
        var container = new UnityContainer();

        container.RegisterType<IMyService, MyService>();

        DependencyResolver.SetResolver(new UnityDependencyResolver(container));
    }
}

ApiContoller:

public class MebAPIController : ApiController
    {
        private IMyService _myService;
        public MebAPIController(IMyService myService)
        {
            _myService = myService;
        }

        [AcceptVerbs("GET", "POST")]
        public ServiceResult GetStudents()
        {
            _myService.GetInfo(737746, "1. Sınıf", "A Şubesi");
            return null;
        }
    }

Я также называю это в глобальном. asax;

protected void Application_Start()
        {
            UnityConfig.RegisterComponents();
...