Unknown Interface IDataObjectBase

Topics: Issues / bugs
Dec 5, 2012 at 8: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?

Coordinator
Dec 5, 2012 at 8:52 AM

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

Dec 5, 2012 at 8: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?

Coordinator
Dec 5, 2012 at 9:03 AM

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

Dec 5, 2012 at 9: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.

Coordinator
Dec 5, 2012 at 9:19 AM

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

Dec 5, 2012 at 9: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

Coordinator
Dec 5, 2012 at 9: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 11:10 AM

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 12:50 PM
Edited Dec 5, 2012 at 12:50 PM

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

Coordinator
Dec 5, 2012 at 12:51 PM

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

Dec 5, 2012 at 12:58 PM

Nuget

Dec 5, 2012 at 1:29 PM
Edited Dec 5, 2012 at 1: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
Coordinator
Dec 5, 2012 at 6: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 5:11 AM
Edited Dec 6, 2012 at 5: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.

Coordinator
Dec 6, 2012 at 7:43 PM

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

Dec 7, 2012 at 6:18 AM

I add an issue is that ok?

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

Yes, please upload it to the created work item.