ASP.NET construit dans le profil utilisateur par rapport à la classe de style ancien utilisateur / tables

voix
18

Je cherche des conseils en ce qui concerne les meilleures pratiques autour de l'utilisation de la fonction de profil dans ASP.NET.

Comment décidez-vous ce qui doit être conservé dans le profil de l'utilisateur intégré, ou si vous devez créer votre propre table de base de données et ajouter une colonne pour les champs souhaités? Par exemple, un utilisateur a un code postal, dois-je enregistrer le code postal dans ma propre table, ou devrais-je ajouter au profil web.config xml et y accéder via le profil de l'utilisateur mécanisme d'ASP.NET?

Les avantages / inconvénients que je peux penser sont en ce moment que , puisque je ne sais pas le profil très bien (il est un peu matrice en ce moment), je peux probablement faire ce que je veux si je la route de table (par exemple, SQL pour obtenir tous les utilisateurs dans le même code que l'utilisateur actuel). Je ne sais pas si je peux faire la même chose si j'utilise le profil d'ASP.NET.

Créé 05/08/2008 à 00:06
source utilisateur
Dans d'autres langues...                            


5 réponses

voix
10

Ive construit seulement 2 applications qui ont utilisé le fournisseur de profil. Depuis, je est resté loin de l'utiliser. Pour les deux applications je l'ai utilisé pour stocker des informations sur l'utilisateur telles que leur nom de la société, l'adresse et le numéro de téléphone.

Cela a bien fonctionné jusqu'à ce que notre client voulait être en mesure de trouver un utilisateur par l' un de ces domaines. La recherche implique une boucle à travers tous les utilisateurs profil et comparer les informations aux critères de recherche. Comme le nombre d'utilisateurs a augmenté le temps de recherche est devenu inacceptable pour notre client. La seule solution était de créer une table pour stocker les informations des utilisateurs. La vitesse de recherche a augmenté énormément.

Je recommande de conserver ce type d'information dans sa propre table.

Créé 06/08/2008 à 03:26
source utilisateur

voix
1

profil de l'utilisateur est un joli cadre propre pour la personnalisation individuelle (AKA. Propriétés du profil). (Par exemple, iGoogle) le problème de c'est son n'a pas été conçu pour la requête et non idéal pour le partage des données à l'utilisateur public. (Vous toujours en mesure de le faire, avec une faible performance)

Donc, si vous voulez améliorer l'expérience utilisateur personnalisée, le profil de l'utilisateur serait une bonne façon d'aller. sinon, utilisez votre propre classe et table serait une solution beaucoup mieux.

Créé 30/10/2009 à 00:42
source utilisateur

voix
1

Je pense que cela dépend du nombre de domaines dont vous avez besoin. À ma connaissance, les profils sont essentiellement une longue chaîne qui obtient divisé les tailles de champ donné, ce qui signifie qu'ils n'échelle pas très bien si vous avez de nombreux domaines et utilisateurs.

D'autre part, ils sont construits, il est donc un moyen facile et standardisé, ce qui signifie qu'il n'y a pas une grande courbe d'apprentissage et vous pouvez l'utiliser dans des applications futures et sans avoir besoin de ruser à une nouvelle structure de la table.

Rouler votre propre chose vous permet de le mettre dans une base de données correctement normalisée, ce qui améliore considérablement les performances, mais vous devez écrire à peu près tout le code de gestion de profil vous.

Edit: En outre, les profils ne sont pas mises en cache, de sorte que chaque accès à un profil va à la première base de données (il est alors mis en mémoire cache pour cette demande, mais la demande suivante obtenir de la base de données à nouveau)

Si vous pensez à écrire votre propre chose, peut - être un fournisseur personnalisé profil vous donne le meilleur des deux mondes - l' intégration transparente, mais les trucs personnalisés que vous voulez faire.

Créé 05/08/2008 à 00:10
source utilisateur

voix
1

Dans mon expérience de son mieux pour garder un l'information dans le profil à un strict minimum, ne mettre l'essentiel là-dedans qui sont directement nécessaires pour l'authentification. D'autres informations telles que les adresses doivent être enregistrées dans votre propre base de données par votre propre logique d'application, cette approche est plus extensible et maintenable.

Créé 05/08/2008 à 00:10
source utilisateur

voix
0

Je pense qu'il est préférable d'utiliser pour des données supplémentaires qui ne sont pas essentielles à l'utilisateur qui est normalement seulement important lorsque l'utilisateur se connecte en tout cas. Pensez données qui ne cassera pas quelque chose d'important si elle était tout effacé.

de préférence personnelle des thats bien sûr, mais d'autres ont soulevé d'autres questions importantes.

Il est également très utile étant donné qu'il peut être utilisé pour un utilisateur non authentifié dont le profil est maintenu avec un cookie anonyme.

Créé 05/12/2009 à 21:19
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more