Server instance: bc17cu1
Tenant ID:
Environment Name:
Environment Type:
User: [me]
Type: System.InvalidCastException
Message: Unable to cast object of type 'System.Collections.ObjectModel.ReadOnlyCollection`1[Microsoft.Dynamics.Nav.Runtime.NavText]' to type 'System.Collections.Generic.List`1[Microsoft.Dynamics.Nav.Runtime.NavText]'.
StackTrace:
at Microsoft.Dynamics.Nav.Runtime.TrappableOperationExecutor.ExecuteFactory[T](Func`1 factory, Func`2 mapNativeException)
at Microsoft.Dynamics.Nav.BusinessApplication.PageExtension66666.OnOpenPage_Scope.OnRun()
at Microsoft.Dynamics.Nav.Runtime.NavMethodScope.Run()
at Microsoft.Dynamics.Nav.BusinessApplication.PageExtension66666.OnOpenPage()
at Microsoft.Dynamics.Nav.Types.LinqExtensions.ForEach[TSource](IEnumerable`1 source, Action`1 action)
at Microsoft.Dynamics.Nav.Runtime.NavForm.RaiseOnOpenPage()
at Microsoft.Dynamics.Nav.Runtime.NavForm.OpenForm()
at Microsoft.Dynamics.Nav.Service.NSFormBatchOpen.<>c__DisplayClass15_1.<HandleRegistrateDataAccess>b__0(NsDataAccess dataAccess)
at Microsoft.Dynamics.Nav.Service.NsFormDataAccess.RunWithFormDataAccess(ITreeObject parent, NavForm form, Action`1 action)
at Microsoft.Dynamics.Nav.Service.NsDataAccess.RunWithDataAccess(ITreeObject parent, NavRecordState state, Boolean instantiateNewForm, Guid parentFormHandle, String parentControlName, Boolean& instantiatedForm, Action`1 action)
at Microsoft.Dynamics.Nav.Service.NsDataAccess.RunWithDataAccess(ITreeObject parent, NavRecordState state, Action`1 action)
at Microsoft.Dynamics.Nav.Service.NSFormBatchOpen.HandleRegistrateDataAccess(FormOpenResponse openResponse, List`1 registeredForms)
at Microsoft.Dynamics.Nav.Service.NSFormBatchOpen.Open(NavSession session)
at Microsoft.Dynamics.Nav.Service.NSService.OpenForm(OpenFormRequest form)
at SyncInvokeOpenForm(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.RunInTransactionCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, MethodBase syncMethod, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.<>c__DisplayClass28_1.<Combine>b__1(NSServiceBase serviceInstance, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.TransientErrorRetryCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, MethodBase syncMethod, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.<>c__DisplayClass28_1.<Combine>b__1(NSServiceBase serviceInstance, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.ErrorMappingCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, MethodBase syncMethod, Object[] inputs, Object[]& outputs)
Source: Microsoft.Dynamics.Nav.Ncl
HResult: -2147467262
StackTrace:
at Microsoft.Dynamics.Nav.Runtime.TrappableOperationExecutor.ExecuteFactory[T](Func`1 factory, Func`2 mapNativeException)
at Microsoft.Dynamics.Nav.BusinessApplication.PageExtension66666.OnOpenPage_Scope.OnRun()
at Microsoft.Dynamics.Nav.Runtime.NavMethodScope.Run()
at Microsoft.Dynamics.Nav.BusinessApplication.PageExtension66666.OnOpenPage()
at Microsoft.Dynamics.Nav.Types.LinqExtensions.ForEach[TSource](IEnumerable`1 source, Action`1 action)
at Microsoft.Dynamics.Nav.Runtime.NavForm.RaiseOnOpenPage()
at Microsoft.Dynamics.Nav.Runtime.NavForm.OpenForm()
at Microsoft.Dynamics.Nav.Service.NSFormBatchOpen.<>c__DisplayClass15_1.<HandleRegistrateDataAccess>b__0(NsDataAccess dataAccess)
at Microsoft.Dynamics.Nav.Service.NsFormDataAccess.RunWithFormDataAccess(ITreeObject parent, NavForm form, Action`1 action)
at Microsoft.Dynamics.Nav.Service.NsDataAccess.RunWithDataAccess(ITreeObject parent, NavRecordState state, Boolean instantiateNewForm, Guid parentFormHandle, String parentControlName, Boolean& instantiatedForm, Action`1 action)
at Microsoft.Dynamics.Nav.Service.NsDataAccess.RunWithDataAccess(ITreeObject parent, NavRecordState state, Action`1 action)
at Microsoft.Dynamics.Nav.Service.NSFormBatchOpen.HandleRegistrateDataAccess(FormOpenResponse openResponse, List`1 registeredForms)
at Microsoft.Dynamics.Nav.Service.NSFormBatchOpen.Open(NavSession session)
at Microsoft.Dynamics.Nav.Service.NSService.OpenForm(OpenFormRequest form)
at SyncInvokeOpenForm(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.RunInTransactionCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, MethodBase syncMethod, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.<>c__DisplayClass28_1.<Combine>b__1(NSServiceBase serviceInstance, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.TransientErrorRetryCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, MethodBase syncMethod, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.<>c__DisplayClass28_1.<Combine>b__1(NSServiceBase serviceInstance, Object[] inputs, Object[]& outputs)
at Microsoft.Dynamics.Nav.Service.ServiceOperationInvoker.ErrorMappingCombinator(ServiceOperation innerOperation, NSServiceBase serviceInstance, MethodBase syncMethod, Object[] inputs, Object[]& outputs)
I found #6696 while just trying to get a list of
enumNames()and chop off the 1st one representing the blank values. Now I'm trying to be clever and work around that by taking aGetRange()of theNames()list and omit the 1st name that way. I shouldn't have tried to be clever! I just get a different, worse error/crash.Shouldn't it be OK to take a read-only 'view'
Listof a read-only list, so long as we don't then try to mutate the 'view' copy (and see #6696 for that)?If not, can this be diagnosed at compile-time, as I also request for #6696?
the code:
result:

the error from Event Viewer: