Étant donné que la classe Bootstrapper
est obsolète avec Prism 7, j'aimerais modifier mon application C # WPF à l'aide de la classe PrismApplication
.
Est-ce que quelqu'un sait comment refactoriser une application Prism 6 en utilisant le Bootstrapper : UnityBootstrapper
dans la nouvelle PrismApplication
?
Je pose la question parce que la documentation concernant ces pré-versions est assez limitée et que je ne suis pas le meilleur pour comprendre ce que je dois faire en ne regardant que le code source de Prism.
Cela dépend de ce que fait votre bootstrapper, mais Prism.Unity.PrismApplication
a des méthodes similaires à remplacer, vous devriez donc pouvoir copier le code depuis le bootstrapper. Vous n'avez probablement besoin que de RegisterTypes
et CreateShell
. N'oubliez pas de mettre à jour App.xaml
pour changer le type de votre application ...
App.xaml
devrait être quelque chose comme ceci:
<prism:PrismApplication x:Class="WpfApp1.App"
x:ClassModifier="internal"
xmlns="http://schemas.Microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.Microsoft.com/winfx/2006/xaml"
xmlns:prism="http://prismlibrary.com/"/>
et par souci d'exhaustivité, App.xaml.cs
:
internal partial class App
{
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
throw new NotImplementedException();
}
protected override Window CreateShell()
{
throw new NotImplementedException();
}
}
D'accord, appelez-moi muet ou peu importe, mais j'ai eu le même problème avec la même erreur:
App.RegisterTypes (IContainerRegistery): aucune méthode appropriée trouvée pour remplacer
Mon problème était que je suis allé et copié et collé le App.xaml
de ici et le cs de ici et n'a pas changé l'espace de nom dans le App.xaml
de x:Class="Regions.App"
à x:Class="WpfApp.App"