Quantcast
Channel: Xamarin.Forms — Xamarin Community Forums
Viewing all articles
Browse latest Browse all 91519

XLabs IoC resolver being set twice... InvalidOperationException

$
0
0

Hi everyone,

I'm getting a weird behavior with the XLabs Resolver that I can't seem to understand what's happening...

In the OnCreate method of my MainActivity class (PCL project), I'm setting up my XLabs Resolver, registering the IDevice and IMediaPicker interfaces. Here's the code I used:

var container = new SimpleContainer();
            container.Register<IDevice>(t => AndroidDevice.CurrentDevice);
            container.Register<IMediaPicker, MediaPicker>();
            Resolver.SetResolver(container.GetResolver());

Now, this works fine, except when we're getting an InvalidOperationException with the message "IResolver can only be set once. If this was intentional you should call Reset method first.". I checked the source code on github and this clearly happens when we're trying to set the resolver when it's already set. The thing is, I'm only calling this in my OnCreate method, no where else.

Am I missing something on how the activity is created that makes this being called twice ? Now I'll be adding a check to the IsSet method to then call ResetResolver when it is already set, but I'd love to understand what's happening behind.

Thanks in advance,
Bruno


Viewing all articles
Browse latest Browse all 91519

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>