Fuse not finding image path?

Having an issue with Fuse finding the images in the Assets folder.

The files are definitely there, I double checked with the names, I renamed them directly from the DB values, so they are there.
I put in an extra field with the thumb name, and it displays it.

But when I put the image to have the path from the DB, the app crashes.

                <Each Items="{data.Tours}">
                    <DockPanel Height="300" Margin="10,20">
                        <Rectangle Layer="Background" CornerRadius="10" Fill="#fff"/>
                        <Rectangle Height="200" Dock="Top">
                        	<Image File="Assets/{Thumb}" Height="230" Padding="30" /> 
                    	</Rectangle>
                            
                            <Panel>
                            <Text Value="{Title}" TextAlignment="Left" Alignment="Left"  Margin="10,0" Padding="10" Dock="Top" FontSize="22" />
                            <Text Value="{Description}" TextAlignment="Left" Alignment="Left"  Margin="10,30" Padding="10" Dock="Top" TextWrapping="Wrap" />
                            <Text Value="{Thumb}" TextAlignment="Left" Alignment="Left"  Margin="10,-10" Padding="10" Dock="Top" TextWrapping="Wrap" />
                        </Panel>
                        	
                        
                    </DockPanel>
                </Each>

If I put the direct path, like then it works.

Why is this happening?

Here’s the error reported:

System.InvalidCastException: Specified cast is not valid.
  at (wrapper castclass) System.Object:__castclass_with_cache (object,intptr,intptr)
  at Uno.UX.Property`1[T].SetAsObject (System.Object value, IPropertyListener origin) <0x21886f20 + 0x0002f> in <filename unknown>:0 
  at Uno.UX.StringConcatOperator.SetString (System.String v) <0x21886e70 + 0x0007b> in <filename unknown>:0 
  at Uno.UX.StringConcatOperator.Push () <0x21886ba0 + 0x0003b> in <filename unknown>:0 
  at Uno.UX.StringConcatOperator.set_Right (System.String value) <0x21886e10 + 0x00053> in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) <0x4331900 + 0x0008f> in <filename unknown>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () <0x21887340 + 0x0002b> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.TryInvokeExtension.Try (System.Func`1 func) <0x11fc4018 + 0x0005f> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.TryInvokeExtension.TryInvoke (System.Reflection.MethodInfo mi, System.Object obj, System.Object[] value) <0x11fdb528 + 0x00107> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.CompiledTypeReflection.SetPropertyValue (System.Object obj, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) <0x1f190468 + 0x00097> in <filename unknown>:0 
  at Outracks.Fuse.Preview.RuntimeObjectPoker.<HookUpReflectionInterface>m__2 (System.Object a, System.String b, System.Object c) <0x1f1903f8 + 0x0005b> in <filename unknown>:0 
  at Outracks.Simulator.Reflection.DelegateReflection.Outracks.Simulator.Runtime.IReflection.SetPropertyValue (System.Object instance, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) <0x1f1903c0 + 0x0002c> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.WriteProperty p) <0x1f1900b8 + 0x00065> in <filename unknown>:0 
  at Outracks.Simulator.Bytecode.Expression.Match[T] (System.Func`2 a1, System.Func`2 a2, System.Func`2 a3, System.Func`2 a4, System.Func`2 a5, System.Func`2 a6, System.Func`2 a7, System.Func`2 a8, System.Func`2 a9, System.Func`2 a10, System.Func`2 a11, System.Func`2 a12, System.Func`2 a13, System.Func`2 a15, System.Func`2 a16) <0x1f084a60 + 0x003d8> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.Expression expression) <0x1f0844c0 + 0x00563> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Execute (IEnumerable`1 statements) <0x1f084370 + 0x00077> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Execute (Outracks.Simulator.Bytecode.Lambda lambda, System.Object[] arguments) <0x1f083ff0 + 0x00157> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.LambdaClosure.Func (System.Object a1, System.Object a2) <0x1f1d2590 + 0x00086> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.LambdaClosure.Action (System.Object a1, System.Object a2) <0x1f1d2558 + 0x00023> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.UxProperty`1[T].Set (Outracks.Simulator.Runtime.T value, IPropertyListener origin) <0x21886a08 + 0x00044> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].TryPushAsValue (System.Object newValue) <0x218863f0 + 0x00197> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].PushValue (System.Object newValue) <0x218862f0 + 0x00073> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].NewValue (System.Object value) <0x218860d0 + 0x00085> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandlePath (System.Object dc, System.String path) <0x1ffe67a8 + 0x0003a> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandleNewDataContext (System.Object val) <0x1ffe71e8 + 0x00033> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandleObject (Fuse.Scripting.ObjectMirror obj) <0x1ffe6d68 + 0x00063> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandlePath (System.Object dc, System.String path) <0x1ffe67a8 + 0x00443> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.Init (System.Object dc, System.String path) <0x1ffe6628 + 0x00053> in <filename unknown>:0 
  at Fuse.Reactive.BindAttempt.TryBind () <0x1fce4430 + 0x00083> in <filename unknown>:0 
  at Fuse.Reactive.BindAttempt..ctor (Fuse.Reactive.PathObserver po) <0x1fce4050 + 0x00167> in <filename unknown>:0 
  at Fuse.Reactive.PathObserver.RestartBinding () <0x1fce3fa0 + 0x00067> in <filename unknown>:0 
  at Fuse.Reactive.PathObserver..ctor (Fuse.Reactive.ContextBinding b, Fuse.Node n, System.String path) <0x1fce3e60 + 0x00083> in <filename unknown>:0 
  at Fuse.Reactive.ContextBinding.OnRooted () <0x1fce3cd0 + 0x0004f> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].OnRooted () <0x1fce39f0 + 0x00013> in <filename unknown>:0 
  at Fuse.Binding.Root (Fuse.Node parent) <0x1fce3938 + 0x0009e> in <filename unknown>:0 
  at Fuse.Node.RootBindings () <0x11fad988 + 0x00093> in <filename unknown>:0 
  at Fuse.Node.OnRooted () <0x11fad950 + 0x00013> in <filename unknown>:0 
  at Fuse.Visual.OnRooted () <0x11fad6d8 + 0x00013> in <filename unknown>:0 
  at Fuse.Elements.Element.OnRooted () <0x11fb13e0 + 0x00013> in <filename unknown>:0 
  at Fuse.Controls.Control.OnRooted () <0x11fb12b0 + 0x00087> in <filename unknown>:0 
  at Fuse.Controls.LayoutControl.OnRooted () <0x11fb1250 + 0x00013> in <filename unknown>:0 
  at Fuse.Controls.Image.OnRooted () <0x1f1da480 + 0x00013> in <filename unknown>:0 
  at Fuse.Node.RootInternalImpl (Fuse.Visual parent) <0x11fad370 + 0x0017e> in <filename unknown>:0 
  at Fuse.Node.RootInternal (Fuse.Visual parent) <0x11fad2a0 + 0x00027> in <filename unknown>:0 
  at Fuse.Visual.OnRooted () <0x11fad6d8 + 0x00127> in <filename unknown>:0 
  at Fuse.Elements.Element.OnRooted () <0x11fb13e0 + 0x00013> in <filename unknown>:0 
  at Fuse.Controls.Control.OnRooted () <0x11fb12b0 + 0x00087> in <filename unknown>:0 
  at Fuse.Controls.LayoutControl.OnRooted () <0x11fb1250 + 0x00013> in <filename unknown>:0 
  at Fuse.Controls.Shape.OnRooted () <0x1f1d7b30 + 0x00013> in <filename unknown>:0 
  at Fuse.Node.RootInternalImpl (Fuse.Visual parent) <0x11fad370 + 0x0017e> in <filename unknown>:0 
  at Fuse.Node.RootInternal (Fuse.Visual parent) <0x11fad2a0 + 0x00027> in <filename unknown>:0 
  at Fuse.Visual.OnRooted () <0x11fad6d8 + 0x00127> in <filename unknown>:0 
  at Fuse.Elements.Element.OnRooted () <0x11fb13e0 + 0x00013> in <filename unknown>:0 
  at Fuse.Controls.Control.OnRooted () <0x11fb12b0 + 0x00087> in <filename unknown>:0 
  at Fuse.Controls.LayoutControl.OnRooted () <0x11fb1250 + 0x00013> in <filename unknown>:0 
  at Fuse.Node.RootInternalImpl (Fuse.Visual parent) <0x11fad370 + 0x0017e> in <filename unknown>:0 
  at Fuse.Node.RootInternal (Fuse.Visual parent) <0x11fad2a0 + 0x00027> in <filename unknown>:0 
  at Fuse.Node.Relate (Fuse.Visual parent, Fuse.Node child) <0x11fb11c0 + 0x00037> in <filename unknown>:0 
  at Fuse.Visual.OnAdded (Fuse.Node b) <0x11fb0e30 + 0x000a7> in <filename unknown>:0 
  at Fuse.Visual.InsertNodes (Int32 index, IEnumerator`1 items) <0x1f1d77b8 + 0x001d3> in <filename unknown>:0 
  at Fuse.Reactive.Instantiator.InsertNew (Int32 dataIndex) <0x1f1d6dc0 + 0x003db> in <filename unknown>:0 
  at Fuse.Reactive.Instantiator.Repopulate () <0x1f1d6c68 + 0x000db> in <filename unknown>:0 
  at Fuse.Reactive.Instantiator.OnItemsChanged () <0x1f1d4e40 + 0x001e7> in <filename unknown>:0 
  at Fuse.Reactive.Each.set_Items (System.Object value) <0x21886a68 + 0x00043> in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) <0x4331900 + 0x0008f> in <filename unknown>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () <0x21887340 + 0x0002b> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.TryInvokeExtension.Try (System.Func`1 func) <0x11fc4018 + 0x0005f> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.TryInvokeExtension.TryInvoke (System.Reflection.MethodInfo mi, System.Object obj, System.Object[] value) <0x11fdb528 + 0x00107> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.CompiledTypeReflection.SetPropertyValue (System.Object obj, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) <0x1f190468 + 0x00097> in <filename unknown>:0 
  at Outracks.Fuse.Preview.RuntimeObjectPoker.<HookUpReflectionInterface>m__2 (System.Object a, System.String b, System.Object c) <0x1f1903f8 + 0x0005b> in <filename unknown>:0 
  at Outracks.Simulator.Reflection.DelegateReflection.Outracks.Simulator.Runtime.IReflection.SetPropertyValue (System.Object instance, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) <0x1f1903c0 + 0x0002c> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.WriteProperty p) <0x1f1900b8 + 0x00065> in <filename unknown>:0 
  at Outracks.Simulator.Bytecode.Expression.Match[T] (System.Func`2 a1, System.Func`2 a2, System.Func`2 a3, System.Func`2 a4, System.Func`2 a5, System.Func`2 a6, System.Func`2 a7, System.Func`2 a8, System.Func`2 a9, System.Func`2 a10, System.Func`2 a11, System.Func`2 a12, System.Func`2 a13, System.Func`2 a15, System.Func`2 a16) <0x1f084a60 + 0x003d8> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.Expression expression) <0x1f0844c0 + 0x00563> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Execute (IEnumerable`1 statements) <0x1f084370 + 0x00077> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Execute (Outracks.Simulator.Bytecode.Lambda lambda, System.Object[] arguments) <0x1f083ff0 + 0x00157> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.LambdaClosure.Func (System.Object a1, System.Object a2) <0x1f1d2590 + 0x00086> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.LambdaClosure.Action (System.Object a1, System.Object a2) <0x1f1d2558 + 0x00023> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.UxProperty`1[T].Set (Outracks.Simulator.Runtime.T value, IPropertyListener origin) <0x21886a08 + 0x00044> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].TryPushAsValue (System.Object newValue) <0x218863f0 + 0x00197> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].PushValue (System.Object newValue) <0x218862f0 + 0x00073> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].NewValue (System.Object value) <0x218860d0 + 0x00085> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandlePath (System.Object dc, System.String path) <0x1ffe67a8 + 0x0003a> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandleNewDataContext (System.Object val) <0x1ffe71e8 + 0x00033> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandleObject (Fuse.Scripting.ObjectMirror obj) <0x1ffe6d68 + 0x00063> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandlePath (System.Object dc, System.String path) <0x1ffe67a8 + 0x00443> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandleNewDataContext (System.Object val) <0x1ffe71e8 + 0x00033> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.OnSet (System.Object value) <0x218860a0 + 0x00027> in <filename unknown>:0 
  at Fuse.Scripting.Observable+Set.SendMessage (Fuse.Scripting.Subscription sub) <0x21885fe8 + 0x00034> in <filename unknown>:0 
  at Fuse.Scripting.Observable+Operation.Perform () <0x1ffe78a0 + 0x00077> in <filename unknown>:0 
  at Fuse.Scripting.Context.ProcessUIMessages () <0x1ffe7728 + 0x00043> in <filename unknown>:0 
  at Fuse.UpdateListener.Invoke () <0x11fe3380 + 0x00053> in <filename unknown>:0 
  at Fuse.UpdateManager.Update (Fuse.Stage stage) <0x11fe2e48 + 0x0024f> in <filename unknown>:0 
System.InvalidCastException: Specified cast is not valid.
  at (wrapper castclass) System.Object:__castclass_with_cache (object,intptr,intptr)
  at Uno.UX.Property`1[T].SetAsObject (System.Object value, IPropertyListener origin) <0x21886f20 + 0x0002f> in <filename unknown>:0 
  at Uno.UX.StringConcatOperator.SetString (System.String v) <0x21886e70 + 0x0007b> in <filename unknown>:0 
  at Uno.UX.StringConcatOperator.Push () <0x21886ba0 + 0x0003b> in <filename unknown>:0 
  at Uno.UX.StringConcatOperator.set_Right (System.String value) <0x21886e10 + 0x00053> in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) <0x4331900 + 0x0008f> in <filename unknown>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () <0x21887340 + 0x0002b> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.TryInvokeExtension.Try (System.Func`1 func) <0x11fc4018 + 0x0005f> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.TryInvokeExtension.TryInvoke (System.Reflection.MethodInfo mi, System.Object obj, System.Object[] value) <0x11fdb528 + 0x00107> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.CompiledTypeReflection.SetPropertyValue (System.Object obj, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) <0x1f190468 + 0x00097> in <filename unknown>:0 
  at Outracks.Fuse.Preview.RuntimeObjectPoker.<HookUpReflectionInterface>m__2 (System.Object a, System.String b, System.Object c) <0x1f1903f8 + 0x0005b> in <filename unknown>:0 
  at Outracks.Simulator.Reflection.DelegateReflection.Outracks.Simulator.Runtime.IReflection.SetPropertyValue (System.Object instance, Outracks.Simulator.Bytecode.TypeMemberName propertyName, System.Object value) <0x1f1903c0 + 0x0002c> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.WriteProperty p) <0x1f1900b8 + 0x00065> in <filename unknown>:0 
  at Outracks.Simulator.Bytecode.Expression.Match[T] (System.Func`2 a1, System.Func`2 a2, System.Func`2 a3, System.Func`2 a4, System.Func`2 a5, System.Func`2 a6, System.Func`2 a7, System.Func`2 a8, System.Func`2 a9, System.Func`2 a10, System.Func`2 a11, System.Func`2 a12, System.Func`2 a13, System.Func`2 a15, System.Func`2 a16) <0x1f084a60 + 0x003d8> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Evaluate (Outracks.Simulator.Bytecode.Expression expression) <0x1f0844c0 + 0x00563> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Execute (IEnumerable`1 statements) <0x1f084370 + 0x00077> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.ScopeClosure.Execute (Outracks.Simulator.Bytecode.Lambda lambda, System.Object[] arguments) <0x1f083ff0 + 0x00157> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.LambdaClosure.Func (System.Object a1, System.Object a2) <0x1f1d2590 + 0x00086> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.LambdaClosure.Action (System.Object a1, System.Object a2) <0x1f1d2558 + 0x00023> in <filename unknown>:0 
  at Outracks.Simulator.Runtime.UxProperty`1[T].Set (Outracks.Simulator.Runtime.T value, IPropertyListener origin) <0x21886a08 + 0x00044> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].TryPushAsValue (System.Object newValue) <0x218863f0 + 0x00197> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].PushValue (System.Object newValue) <0x218862f0 + 0x00073> in <filename unknown>:0 
  at Fuse.Reactive.DataBinding`1[T].NewValue (System.Object value) <0x218860d0 + 0x00085> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandlePath (System.Object dc, System.String path) <0x1ffe67a8 + 0x0003a> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandleNewDataContext (System.Object val) <0x1ffe71e8 + 0x00033> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandleObject (Fuse.Scripting.ObjectMirror obj) <0x1ffe6d68 + 0x00063> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.HandlePath (System.Object dc, System.String path) <0x1ffe67a8 + 0x00443> in <filename unknown>:0 
  at Fuse.Reactive.SegmentObserver.Init (System.Object dc, System.String path) <0x1ffe6628 + 0x00053> in <filename unknown>:0 
  at Fuse.Reactive.BindAttempt.TryBind () <0x1fce4430 + 0x00083> in <filename unknown>:0 
  at Fuse.Reactive.BindAttempt..ctor (Fuse.Reactive.PathObserver po) <0x1fce4050 + 0x00167> in <filename unknown>:0 
  at Fuse.Reactive.PathObserver.RestartBinding () <0x1fce3fa0 + 0x00067> in <filename unknown>:0 
  at Fuse.UpdateManager.ProcessPostActions () <0x11fe2ba8 + 0x000bc> in <filename unknown>:0 

That should work, are you sure you didn’t forget the extension name or something? Could you try to hardcode the path in javascript with only one path in the array? Then you will figure out if it’s only one of the images that is crashing the app.

Interesting!
Once I hardcoded the path in Firebase as “Assets/imagename.png” it started working (I had to remove “Assets/” from the Each).

So something is happening in the string concatenation in the Each loop. Perhaps you guys want to create an issue for this?

Could you create a complete reproducible example as small as possible?