none
[WSS v3] Sharepoint WebPart && Base de donnée SQL Server RRS feed

  • Question

  • Bonjour,
    Je travail actuellement sur un webPart Sharepoint.J'affiche dans un Datagrid les données recupérées d'une Database SQL Server.
    Jusqu'à aujourd'hui, je definie la chaine de connexion  dans le code behind de mon webPart comme ceci :
    private SqlConnection con = new SqlConnection("Data Source = virtua; Initial Catalog = toto; User Id = monID; Password =monPwd ");

    Evidement, c'est  pas ce qu'il y a de plus propre à faire en terme de prog. Je souhaiterai donc gerer cette connexion au niveau du fichier web.conf.


    J'ai ajouté un Tag ConnectionString à mon fichier web.conf.Mais je ne sais pas comment je peux appeler cette connection depuis le code de mon webPart.

    /SharePoint>
    <connectionStrings>
    <add name="nomConnexion" connectionString="Persist Security Info=False;User ID=username;Pwd=password;Initial Catalog=NomBase;Data Source=NomServeur;" providerName="System.Data.SqlClient" />
    </connectionStrings>
    <system.web>
    avez-vous une petite idée ?
    Merci de votre aide
      
    vendredi 3 juillet 2009 12:40

Toutes les réponses

  • Bonjour,

    En principe vous aurez une erreur lors de la récupération par code de cette chaîne de connexion : "Le stockage des informations de connexion dans le fichier de config de l'application Web.config n'est pas pris en charge sur les sites windows sharepoint services. La connexion sera stockée dans le controle de source de données"

    Un contournement consiste à la stocker dans les AppSettings et la récupérer via ConfigurationManager.AppSettings["cle"], mais c'est un hack qui ne résoud en rien le problème de sécurité concerné.

    Une autre option, plus propre mais plus couteuse en terme de développement, serait de stocker cette chaîne dans le PropertyBag de l'objet SPFarm courant. Ce qui est génant avec cette méthode c'est qu'il faut développer une interface dans l'administration centrale qui permettrait de modifier la châine.
    ex : String connectionString = SPFarm.Local.Properties["machaine"] as String;

    http://blogs.developpeur.org/anouvel
    • Proposé comme réponse Arnault Nouvel vendredi 3 juillet 2009 14:10
    vendredi 3 juillet 2009 14:10
  • Merci
    vendredi 3 juillet 2009 14:13