I just pushed a new version of MVVM Light to Nuget. The new version is 22.214.171.124. The difference towards the previous version (126.96.36.199) and this one is that I am not depending on the CommonServiceLocator Nuget package instead of providing my own.
However, the CommonServiceLocator does not exist for all MVVM Light-supported frameworks. We have the following situation:
- WPF3.5 SP1, WPF4, WPF4.5: Depends on the CommonServiceLocator Nuget package.
- Silverlight 4, Silverlight 5: Depends on the CommonServiceLocator Nuget package.
- Windows Phone 7.1, Windows Phone 8: Provides its own CommonServiceLocator implementation
- Windows 8: Provides its own CommonServiceLocator implementation
- Windows Phone 7.0, Silverlight 3: Not supported anymore in Nuget.
This change was needed for two reasons:
- Simplifying the deployment by relying on existing packages instead of using my own.
- Avoiding strong name issues when working in conjunction with another package that uses the CommonServiceLocator (such as Unity for example).
MVVM Light (full) now depends on MVVM Light Libs
There are two packages in Nuget for MVVM Light:
- MvvmLightLibs provides only the DLLs with the toolkit’s components. No additional content is added.
- MvvmLight provides the DLLs and also a skeleton of ViewModelLocator and MainViewModel (as files). It also modifies the App.xaml and MainPage.xaml file to (attempt to) wire the ViewModelLocator and the MainViewModel (as DataContext). There are still a couple of issues in Windows 8 and Windows Phone 8 which I will do my best to solve ASAP.
What’s next? Installer!
The next step will be to finally provide the full MSI with the 4.1.27 build of the DLLs as well as some changes to the project templates. I had a few issues with the installer but I have good hopes that I can resolve that soon.