Question

J'ai une application .NET MVC que j'essaie d'utiliser une adresse électronique comme nom d'utilisateur. J'ai mis en place la logique de Cet article où le nom d'utilisateur est masqué comme le courriel. Cependant, quand j'essaie d'appeler

private readonly MembershipProvider _provider;
MembershipCreateStatus status;
_provider.CreateUser(userName, password, email, null, null, true, false, out status);

où le nom d'utilisateur est "e-mail@email.com", le statut revient toujours comme invalideProviderserkeykey . Si j'utilise un nom d'utilisateur standard (sans @), cela fonctionne bien. J'ai essayé de chercher une solution mais je peux vraiment trouver une explication de InvalidProviderserkey n'importe où.

Je me demandais si quelqu'un a déjà rencontré ce problème avant ou pourrait être en mesure d'expliquer pourquoi ce scénario rendrait ce statut spécifique. Merci d'avance pour toute aide.

mise à jour

J'ai utilisé GUID.NewGuid pour le fournisseurAuserkey et cela a fonctionné.

_provider.CreateUser(userName, password, email,null, null, true, Guid.NewGuid(), out status);

Merci Daniel A. Blanc pour votre aide. Le lien d'article que vous avez fourni était ce dont j'avais besoin pour le comprendre.

Était-ce utile?

La solution

Make sure you pass something to providerUserKey, not just false.

providerUserKey Type: System.Object The unique identifier from the membership data source for the user.

http://msdn.microsoft.com/en-us/library/system.web.security.membershipprovider.createuser.aspx

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top