Hi guys,
So I am in the process of trying to create a UWP project in the mobile solution, everything compiles when it runs I am getting a null exception at line 56 of LoginViewModel in Mobile.Shared\ViewModels\LoginViewModel
It appears everything under applicationContext is null (applicationContext.Configuration etc), i have a feeling that maybe the DI is not working correctly or something like that but I am having trouble trying to see exactly what is wrong
My UWP is just a blank UWP that I have added a Locale.cs to (to match the other mobile projects), then added references to Application.Client Application.Shared Core.Shared Mobile.Shared
It wouldnt compile without all 4 even though only 2 are needed, also has Flurl and Flurl.Http, Xamarin.Forms (same versions as the other projects) The MainPage.xaml.cs has this.LoadApplication(new App()); added to the ctor and inheritance to Page removed from the class while WindowsPage was added to the xaml markup App.xaml.cs has had the following added to the OnLaunched event
ApplicationBootstrapper.InitializeIfNeeds<NAMESPACEXamarinUWPModule>();
AppDomain.CurrentDomain.UnhandledException += CurrentDomainOnUnhandledException; TaskScheduler.UnobservedTaskException += TaskSchedulerOnUnobservedTaskException;
base.OnLaunched(e); //Xamarin.Forms.Forms.Init(e); global::Xamarin.Forms.Forms.Init(e);
ImageCircleRenderer.Init(); CachedImageRenderer.Init();
ConfigureFlurlHttp();
and the App.xaml.cs inherits from Windows.UI.Xaml.Application
So I think either the App.xaml is inherting maybe from the wrong thing or OnLaunched might be wrong event perhaps or I need more references in the project to fix up the applicationContext null thing but im not really sure can anyone help?
Regards, Pete
4 Answer(s)
-
0
hi,
did you see https://support.aspnetzero.com/QA/Questions/6273
-
0
Hi alper,
Yes I did see that post and used it to piece together some of the requirements to get the UWP project started. My problem is related to appContext being null when trying to load the LoginViewModel. I cant see how it relates to AsyncCommand at all?
I believe that appContext is being resolved before its properties are assigned
Regards, Pete
-
0
hi,
AppContext is located here. It uses a lazy resolve, means it's being resolved for the initial access.
In AppContext there's a resolve method.
Locate a breakpoint here to see if it's being resolved. I guess it doesn't resolve none of your dependencies. (Maybe UWP doesn't work well with
Castle Windsor
.)One other crutial point is every new project must have an AbpModule to resolve dependencies. See Module System for AspNet Boilerplate.
- For Xamarin.Android 👉 AbpZeroTemplateXamarinAndroidModule.cs
- For Xamarin.iOS 👉 AbpZeroTemplateXamarinIosModule.cs
- For Xamarin.UWP 👉 you need to create!
-
0
Hi alper,
Yep already created the module and I figured out the issue, it was that the UserConfigurationManager needs to actually be called to intialise the app context before any view model or anything using app context is called. It is done in droid in the SplashActivity but for iOS in the main shared project App.xaml.cs. I added a clause for UWP in the App.xaml.cs of the shared project too and it resolves the properties as expected.
There are other issues in the UWP project in relation to look and design but at least it runs so now I can focus on that.
Appreciate the help too thanks