2
votes

While converting a Windows Phone 8.1 (Silverlight) app to a Windows Phone 8.1 app, I'm experiencing a crash during loading of the app.

I narrowed the issue down to my global resource declaration in App.xaml.

<Application
    x:Class="MyApp.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:System="using:System">

    <Application.Resources>        
        <System:Double x:Key="PhoneFontSizeSmall">18.667</System:Double>
    </Application.Resource>

If I comment out the System:Double resources, the application is running.

I tried to change the reference declaration using the previous? way like

xmlns:System="clr-namespace:System;assembly=mscorlib"

but that one complains about cannot find Double in namespace... during build.

For more info, the exception thrown during App.Initialization is as follow.

{Windows.UI.Xaml.UnhandledExceptionEventArgs}
    Exception: {"The text associated with this error code could not be found.\r\n\r\nCannot deserialize XBF metadata type list as '%1' was not found in namespace '%0'. [Line: 0 Position: 0]"}
    Handled: false
    Message: "Cannot deserialize XBF metadata type list as '%1' was not found in namespace '%0'. [Line: 0 Position: 0]"
    Native View: To inspect the native object, enable native code debugging.

I'm scratching my head here and Google/Bing has not been helpful so far.

1

1 Answers

1
votes

Use 'x' namespace

<x:Double x:Key="PhoneFontSizeSmall">18.667</x:Double>