HappyNet Silverlight Prism MVVM - Processus d'authentification

Comment permettre à un utilisateur de s'authentifier dans le projet HappyNet ?

HappyNet Connexion et Authentification
Entrons directement dans le vif du sujet, la partie UI est présente dans :
\\HappyNet-SL5\Client\Module\
Soat.HappyNet.Silverlight.Modules.Main\Views\LoginState\LoginStateView.xaml
<Button x:Name="LoginButton"
   cal:Click.Command="{Binding LoginCommand}"

Si l'on tape sur "Enter" le processus d'authentification démarre grâce au trigger :

                        <i:Interaction.Triggers>
                            <triggers:KeyTrigger Key="Enter">
                                <action:ExecuteCommandAction Command="{Binding LoginCommand}" />
                            </triggers:KeyTrigger>
                        </i:Interaction.Triggers>

Code de LoginCommand :
\\HappyNet-SL5\Client\Module\Soat.HappyNet.Silverlight.Modules.Main\Views\LoginState\ILoginStateViewModel.cs
\\HappyNet-SL5\Client\Module\Soat.HappyNet.Silverlight.Modules.Main\Views\LoginState\LoginStateViewModel.cs

public void InitializeCommands()
{
     this.LoginCommand = new DelegateCommand(this.OnLogin,
                () => !string.IsNullOrEmpty(this.UserName) && !string.IsNullOrEmpty(this.Password));

public void OnLogin()
{
            IsLoading = true;
            mainService.BeginLogin(this.UserName, this.Password, LoginCompleted);
}

\\HappyNet-SL5\Client\Module\Soat.HappyNet.Silverlight.Modules.Main\Services\MainService.cs

public void BeginLogin(string user, string password, ServiceCompleted<User> LoginCompleted)
{
            client.LoginAsync(user, password,
                new ServiceArgs<User>(LoginCompleted));
}

Autrement dit, on ne voit absolument pas dans quelle BD ni dans quelle table ni quel champ on utilise pour authentifier un utilisateur ... c'est de la magie encore une fois.

Authentification avec Silverlight et AdventureWorks

J'ai continué de chercher comment s'authentifier avec HappyNet et je suis tombé sur la page suivante :

On y voit d'ailleurs que l'on fait un "Add Exiting Item" de la Data Base AdventureWorks dans le répertoire App_Data ce qui est à mon sens une bonne chose pour le déploiement de l'application ...

Un problème avec Entity Framework et Available Context Class, la solution est Ici.





Aucun commentaire:

Enregistrer un commentaire

Pour plus d'interactivité, n'hésitez pas à laisser votre commentaire.