2010-06-15 2 views
2

J'ai un projet de webparts VS 2008 - dans ce projet est un fichier web.config: quelque chose comme ceci:Accès web.config d'une partie web Sharepoint

<?xml version="1.0"?> 
<configuration> 
    <connectionStrings/> 
    <system.web> 
    <appSettings> 
     <add key="MFOwner" value="Blah" /> 
    </appSettings> 
……. 

Dans ma web, je suis en train de les valeurs d'accès dans la section appSetting: j'ai essayé tout le code ci-dessous et chaque renvoie null:

string Owner = ConfigurationManager.AppSettings.Get("MFOwner"); 
string stuff1 = ConfigurationManager.AppSettings["MFOwner"]; 
string stuff3 = WebConfigurationManager.AppSettings["MFOwner"]; 
string stuff4 = WebConfigurationManager.AppSettings.Get("MFOwner"); 
string stuff2 = ConfigurationManager.AppSettings["MFowner".ToString()]; 

J'ai essayé ce code j'ai trouvé:

NameValueCollection sAll; 
sAll = ConfigurationManager.AppSettings; 
string a; 
string b; 
foreach (string s in sAll.AllKeys) 
    { 
    a = s; 
    b = sAll.Get(s); 
    } 

et fit un pas à travers elle en mode débogage - qui devient des choses comme:

FeedCacheTimer
FeedPageURL
FeedXsl1
ReportViewerMessages

qui ne vient pas de quoi que ce soit dans mon fichier web.config ... .peut-être un fichier de configuration dans sharepoint lui-même? Comment puis-je accéder à un web.config (ou tout autre type de fichier de configuration!) Local à mon site web ???

grâce,

Phil J

+0

@philj: pour formater le code, sélectionnez-le dans l'éditeur et appuyez sur Ctrl-K. Sinon, ça a l'air horrible au mieux. –

Répondre

1

Ces valeurs ressemblent à défaut SharePoint propriétés web.config. Lorsque vous créez un composant WebPart SharePoint, il est déployé dans le répertoire virtuel IIS qui héberge le site SharePoint qui possède son propre fichier web.config (très volumineux) et PAS votre fichier web.config d'application. En fonction de votre environnement de production, vous pouvez mettre à jour le fichier SharePoint web.config avec les valeurs que vous souhaitez et votre code doit fonctionner. Si vous ne pouvez pas mettre à jour le fichier web.config, vous pouvez utiliser un fichier de configuration autonome dans le répertoire IIS que vous déployez (code personnalisé pour le lire) ou éventuellement le sac de propriété associé à chaque collection de sites SP pour lequel vous souhaitez besoin d'ajouter vos valeurs via le code.

+0

Merci pour l'info. Dans mon cas, il utilise le fichier web.config situé sur C: \ MOSS \ Webs \ Portal \ web.config, ce qui est correct, je suppose. Exemples de code trouvés pour accéder à d'autres fichiers web.config situés ailleurs (local ot project?) Mais aucun n'a fonctionné. – user360943

Questions connexes