Биндю реализацию интерфейса IInputService в BootstrapInstaller (он же висит на ProjectContex)
Код
public class BootstrapInstaller : MonoInstaller
{
public IInputService InputService;
public override void InstallBindings()
{
BindInputService();
}
private void BindInputService()
{
InputService = ChangeInputService();
Container
.Bind<IInputService>()
.FromInstance(InputService)
.AsSingle();
}
private static IInputService ChangeInputService() =>
Application.isEditor
? (IInputService) new StandaloneInputService()
: new MobileInputService();
}
Потом пытаюсь проинжектить метод в HeroMove этот InputService, но он не заходит в метод
Код
public class HeroMove : MonoBehaviour
{
private IInputService _inputService;
[Inject]
public void Construct(IInputService inputService)
{
Debug.Log("MOVE" + inputService);
_inputService = inputService;
}
private void Update()
{
//запрос к _inputService и реализация движения
}
}
Этот дебаг не выходит Debug.Log("MOVE" + inputService); и вылетает ошибка "NullReferenceException: Object reference not set to an instance of an object"
Что я делаю не так ?