Unknown Interface IDataObjectBase

Topics: Issues / bugs
Dec 5, 2012 at 9:22 AM

Until now I used the Interface IDataObjectBase. But now I updatet to the newest Catel Version with nuget and the IDataObjectBase ist not found anymore. What happens?

Dec 5, 2012 at 9:52 AM

It has been renamed to IModelBase (which the obsolete tag should hint you, otherwise something is wrong).

Dec 5, 2012 at 9:58 AM

The hint is only on the class DataObejctBase. No hint on the interface.

But IModelBase is also not found only IModel. Is that correct?

Dec 5, 2012 at 10:03 AM

You are right, my mistake, it's IModel.

Dec 5, 2012 at 10:19 AM

Ok. Now I have an other problem with the newest version. My Application never comes up. But at the moment I don't know why. Anywhere an endless loop.

Dec 5, 2012 at 10:19 AM

Check the output window. Register the debug listener. Post the log here.

Dec 5, 2012 at 10:31 AM

Ok. Thats are the last 30 logs of about 5000:

 

11:27:33:799 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.Pages.DetailPageViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:799 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.Bars.RecipeBarViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:799 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:799 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:799 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:799 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:799 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:814 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:814 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:814 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:814 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:814 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:814 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:814 => [DEBUG] [Catel.MVVM.ViewModelBase] A view model ('ConfiguratorControl.ViewModels.Pages.ProfilePageViewModel') the current view model ('ConfiguratorControl.ViewModels.PlaceViewModel') is interested in has changed a property ('SelectedProfile')
11:27:33:877 => [DEBUG] [Catel.Windows.Controls.MVVMProviders.Logic.LogicBase] Target control 'StationGeneralView' is loaded
11:27:33:877 => [DEBUG] [Catel.MVVM.Views.ViewManager] Registering view 'ConfiguratorControl.Views.StationGeneralView'
11:27:33:877 => [DEBUG] [Catel.MVVM.Views.ViewManager] Registered view 'ConfiguratorControl.Views.StationGeneralView'
11:27:33:877 => [DEBUG] [Catel.Windows.Controls.MVVMProviders.Logic.UserControlLogic] Skipping the search for an instance of the InfoBarMessageControl
11:27:33:877 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initializing view model container to manage ViewToViewModel mappings
11:27:33:877 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initializing view model 'StationViewModel'
11:27:33:893 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initialized view model 'StationViewModel'
11:27:33:893 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initialized view model container to manage ViewToViewModel mappings
11:27:36:348 => [DEBUG] [Catel.Windows.Controls.MVVMProviders.Logic.LogicBase] Target control 'PlaceGeneralView' is loaded
11:27:36:348 => [DEBUG] [Catel.MVVM.Views.ViewManager] Registering view 'ConfiguratorControl.Views.PlaceGeneralView'
11:27:36:348 => [DEBUG] [Catel.MVVM.Views.ViewManager] Registered view 'ConfiguratorControl.Views.PlaceGeneralView'
11:27:36:348 => [DEBUG] [Catel.Windows.Controls.MVVMProviders.Logic.UserControlLogic] Skipping the search for an instance of the InfoBarMessageControl
11:27:36:348 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initializing view model container to manage ViewToViewModel mappings
11:27:36:364 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initializing view model 'PlaceViewModel'
11:27:36:364 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initialized view model 'PlaceViewModel'
11:27:36:364 => [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initialized view model container to manage ViewToViewModel mappings

Dec 5, 2012 at 10:36 AM

Weird. Although I see lots and lots of SelectedProfile changes, it does continue with the initialization of other stuff. For now, can you disable the InterestedIn to make sure that is not the cause?

Dec 5, 2012 at 12:10 PM

Yes the problem is in this context. When I disable the InterestedIn, the application comes up.

But before the update it works with enabled InterestedIn.

So i tested a little bit more. When I wait a long time the application comes up.

Dec 5, 2012 at 1:50 PM
Edited Dec 5, 2012 at 1:50 PM

Ok I reduce the SelectedProfile changes and post the logs with the catel Version 3.3 and with the newest beta.

Dec 5, 2012 at 1:51 PM

Ok. How did you update. Via the installer or via nuget?

Dec 5, 2012 at 1:58 PM

Nuget

Dec 5, 2012 at 2:29 PM
Edited Dec 5, 2012 at 2:29 PM

Oh thats difficult to post the logs. Now I have about 2900 lines. I cannot post all. The last 50 lines of the logs are identical.

I can post some not identical lines somewhere in the log. But i don't know if this is helpful.

For exampe that:

That line is only in the beta version

=> [DEBUG] [Catel.MVVM.ViewModelPropertyDescriptor] Created property descriptor for 'SuspendValidationForAllModels' as type 'Boolean'

And very often the only difference are the both classnames:

=> [DEBUG] [Catel.Data.ModelBase] IEditableObject.BeginEdit

and

=> [DEBUG] [Catel.Data.DataObjectBase] IEditableObject.BeginEdit
Dec 5, 2012 at 7:30 PM

1) Yes, that is a new feature, it's correct

2) How many models are you loading at startup? Registering a debug listener can make your app really slow (because writing to the output window is really slow). Make sure you disable the call to RegisterDebugListener when deploying your apps.

3) When you have the InterestedIn disabled and removed the RegisterDebugListener, does it still load the app very slow? Can you provide the *full* log? You can email it to me or create an issue and attach it there.

Dec 6, 2012 at 6:11 AM
Edited Dec 6, 2012 at 6:23 AM

Ok one more try before i attach the full log

thats the last log before the applications starts: ( in both Versions)

=> [DEBUG] [Catel.MVVM.Views.ViewToViewModelMappingHelper] Initialized view model container to manage ViewToViewModel mappings

after that I have to wait long long time in the new beta.,

an then get these logs:

=> [DEBUG] [Catel.MVVM.ViewModelCommandManager] Unregistering commands on view model 'ConfiguratorControl.ViewModels.StationViewModel' with unique identifier '15'
=> [DEBUG] [Catel.MVVM.ViewModelCommandManager] Unregistered commands on view model 'ConfiguratorControl.ViewModels.StationViewModel' with unique identifier '15'
=> [DEBUG] [Catel.MVVM.ViewModelCommandManager] Registering commands on view model 'ConfiguratorControl.ViewModels.StationViewModel' with unique identifier '15'
=> [DEBUG] [Catel.MVVM.ViewModelCommandManager] Found command 'SelectStation' on view model 'StationViewModel'
=> [DEBUG] [Catel.MVVM.ViewModelCommandManager] Registered commands on view model 'ConfiguratorControl.ViewModels.StationViewModel' with unique identifier '15'

 

in the Catel Version 3.3 there are no Catel Logs after the line above. The application starts immediately. And it doesn't matter if the DebugListerner is enabled or disabled. Also in both versions.

Dec 6, 2012 at 8:43 PM

I cannot find the issue in this log. Please send me the full log via email.

Dec 7, 2012 at 7:18 AM

I add an issue is that ok?

Dec 7, 2012 at 10:02 AM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.
Dec 7, 2012 at 10:02 AM

Yes, please upload it to the created work item.