2010-10-17 6 views
1

Je suis relativement nouveau dans les services Silverlight et RIA, et j'essaye de construire un petit projet pour le comprendre. Donc, fondamentalement, j'ai créé une application métier, et j'ai l'écran de connexion normal où je peux ajouter un utilisateur. C'est très bien et je peux ajouter un utilisateur et l'amener dans la table aspnet_Users. Maintenant, j'ai créé des champs supplémentaires, comme Mob No, Tel No, DOB, Locality etc, que j'ai mis dans un tableau que j'ai créé appelé UserProfile, et mon idée est d'obtenir le nom d'utilisateur enregistré, et l'insérer dans ma table UserProfile avec les autres données pertinentes.Obtenir des données de profil utilisateur dans Silverlight 4

J'ai donc créé une page appelée Profile.xaml, j'ai créé un UserProfileDomainService.cs où j'ai juste une requête, pour obtenir les données de profil utilisateur de la table, puis créé un DataGrid Détails sur ma page, et le QueryName dans mon cas, est GetUserProfilesQuery(). Maintenant, ce que je souhaite faire est, obtenir l'utilisateur connecté, obtenir son nom d'utilisateur, et vérifier dans ma table pour voir s'il y a déjà des données dans la table. Si les champs du DataGrid contiennent des données, les utilisateurs peuvent modifier ces données et, dans le cas contraire, autoriser l'utilisateur à insérer des données dans la table. J'ai donc créé une classe UserProfileViewModel, et je veux créer la requête pour obtenir les données pertinentes pour cet utilisateur. Cependant je suis resté sur comment faire tout cela, et comment obtenir l'utilisateur connecté.

Quelqu'un peut-il me donner quelques conseils ou me montrer quelques tutoriels sur la façon dont je peux y parvenir?

Merci beaucoup et votre aide est très appréciée.

Répondre

0

Dans votre requête de service de domaine, vous pouvez utiliser ServiceContext.User.Identity.Name pour obtenir les informations spécifiques à cet utilisateur à inclure dans votre requête db. Je fais quelque chose de similaire dans notre projet.

Nous utilisons le cadre de l'entité de sorte que la requête LINQ to Entities ressemble:

return this.ObjectContext.UserSnapins 
     .Include("Snapin.EvolutionModule") 
     .Where(si => si.User.UserName == ServiceContext.User.Identity.Name) 
     .OrderBy(si => si.PageOrder); 
Questions connexes