2010-06-16 3 views
0

Quelqu'un peut-il aider?Utilisation de l'adhésion à asp.net "THROUGH" services de données wcf?

J'ai récemment eu une configuration d'appartenance asp.net en utilisant une chaîne de connexion à ma base de données via le web.config dans ma couche de service. Cela m'a permis de faire quelque chose comme ceci: -

public bool IsValidLogin(string username, string password) 
    { 
     return System.Web.Security.Membership.ValidateUser(username, password); 
    } 

Comme vous pouvez le voir, je suis en utilisant des méthodes sur le namesspace de system.web.security.membership et il fonctionne comme il devrait :-)

je maintenant déplacé ma base de données sur un service de données WCF, encore une fois cela fonctionne bien pour diverses tables que j'ai ...

Mais je fais l'adhésion pour pointer vers le service de données wcf, je ne peux pas modifier la chaîne de connexion pour pointer vers le service de données puis-je?

D'où je pouvais encore faire

return System.Web.Security.Membership.ValidateUser(username, password); 

et prendra contact avec les tables/db via le service de données WCF et non une chaîne de connexion physique.

Il semble assez ridicule d'avoir encore une chaîne de connexion dans ma couche de service ... quand tout mon accès aux données se fait via ma couche DATAACCESS (service de données WCF)

Toutes les idées ont vraiment apprécié

I suis coincé ..

Répondre

0

Juste enveloppez l'appel d'appartenance et l'exposer comme un service WCF. Facile, toutes vos applications peuvent simplement appeler la méthode "ValidateUser" du service, et le code sous-jacent dans le service s'en remettra à l'API d'appartenance

+0

merci Joel, mais alors je aurais encore besoin d'une chaîne de connexion à ma base de données? mais ceci est juste envelopper chaque méthode, le service aurait toujours besoin de la substance dans le webconfig pour memberhship et une chaîne de connexion valide - non? –

+0

Oui, bien sûr, vous auriez besoin d'une chaîne de connexion ... après tout, les API d'adhésion l'utiliseraient toujours (en supposant que vous utilisez le bon fournisseur) ... il suffit de le mettre dans le fichier .config du service –

0

Cela nécessite que vous implémentiez votre propre fournisseur d'appartenance et que vous analysiez les données du Tables d'appartenance SQL Server/Oracle utilisant directement la couche d'accès aux données.

Les fournisseurs d'appartenance par défaut fournis par SQL Server/Oracle sont des DLL précompilées qui fonctionnent uniquement avec des connexions DB natives.

Questions connexes