Ceci est un problème pour moi avec .Net 3.5 SP1 fonctionnant sur IIS7.5 64 bits (j'ai essayé de forcer 32 bits mais j'ai obtenu le même résultat).Comment puis-je déboguer une erreur «fournisseur d'appartenance par défaut introuvable» avec WCF et un fournisseur d'appartenance ASP.NET personnalisé?
J'ai un service WCF avec lequel je veux utiliser des services d'authentification. Lorsque je n'ai aucun comportement, le service WCF peint (réponses) sans aucune erreur. D'autres services fonctionnent également avec d'autres comportements
Dès que j'ajoute userNameAuthentication au comportement spécifiant un MembershipProvider personnalisé pour l'authentification à un service ...
<serviceCredentials>
<!-- Configure user name authentication to use the Membership Provider -->
<userNameAuthentication userNamePasswordValidationMode ="MembershipProvider"
membershipProviderName ="MembershipService"/>
</serviceCredentials>
Le service explose et retourne l'erreur suivante:
Parser Error Message: Default Membership Provider could not be found.
Source Error:
Line 49: </authentication>
Line 50:
Line 51: <membership defaultProvider="MembershipService" userIsOnlineTimeWindow="15">
Line 52: <providers>
Line 53: <clear/>
Event Log a cette erreur:
WebHost failed to process a request.
Sender Information: System.ServiceModel.Activation.HostedHttpRequestAsyncResult/59884855
Exception: System.ServiceModel.ServiceActivationException: The service '/V4Service.svc' cannot be activated due to an exception during compilation. The exception message is: Default Membership Provider could not be found. (C:\Code\SmartTrade Projects\SmartTrade.API\Web\SmartTrade.API\web.config line 50). ---> System.Configuration.ConfigurationErrorsException: Default Membership Provider could not be found. (C:\Code\SmartTrade Projects\SmartTrade.API\Web\SmartTrade.API\web.config line 50)
at System.Web.Security.Membership.Initialize()
at System.Web.Security.Membership.get_Providers()
at System.ServiceModel.Configuration.UserNameServiceElement.ApplyConfiguration(UserNamePasswordServiceCredential userName)
at System.ServiceModel.Configuration.ServiceCredentialsElement.ApplyConfiguration(ServiceCredentials behavior)
at System.ServiceModel.Configuration.ServiceCredentialsElement.CreateBehavior()
at System.ServiceModel.Description.ConfigLoader.LoadBehaviors[T](ServiceModelExtensionCollectionElement`1 behaviorElement, KeyedByTypeCollection`1 behaviors, Boolean commonBehaviors)
at System.ServiceModel.Description.ConfigLoader.LoadServiceDescription(ServiceHostBase host, ServiceDescription description, ServiceElement serviceElement, Action`1 addBaseAddress)
at System.ServiceModel.ServiceHostBase.ApplyConfiguration()
at System.ServiceModel.ServiceHostBase.InitializeDescription(UriSchemeKeyedCollection baseAddresses)
at System.ServiceModel.ServiceHost..ctor(Type serviceType, Uri[] baseAddresses)
at System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(Type serviceType, Uri[] baseAddresses)
at System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.CreateService(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
Je suis assez sûr que ce n'est pas un problème avec la configuration du fournisseur ou du fournisseur car j'ai ce fournisseur personnalisé qui travaille avec un site ASP MVC.
Des pensées?
Qu'est-ce qui ne fonctionnait pas pour votre fournisseur personnalisé? J'ai ce problème. Le nom du type et de l'assembly sont triplement vérifiés dans le fichier .config, mais j'obtiens cette erreur. Je pense que j'ai besoin de vérifier le journal Fusion, que l'assemblage ne parvient pas à charger en raison d'un problème de chargement de l'environnement, comme une dépendance indisponible. –
La classe MembershipProvider personnalisée a échoué lors d'un appel au constructeur, mais l'erreur reçue était "Le fournisseur d'appartenance par défaut n'a pas pu être trouvé" – JTew