Доступ к web.config из веб-части Sharepoint - PullRequest
2 голосов
/ 15 июня 2010

У меня есть проект веб-частей VS 2008 - в этом проекте есть файл web.config: что-то вроде этого:

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

В моей веб-части я пытаюсь получить доступ к значениям в разделе appSetting:Я попробовал весь приведенный ниже код, и каждый из них возвращает ноль:

 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()];

Я попробовал этот код, я нашел:

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

и прошел через него в режиме отладки - этополучает такие вещи, как:

FeedCacheTimerFeedPageURLFeedXsl1ReportViewerMessages

, который НЕ исходит из моего файла web.config .... может быть, файл конфигурации в самой sharepoint?Как получить доступ к web.config (или любому другому виду конфигурационного файла!), Локальному для моей веб-части ???

спасибо,

Phil J

1 Ответ

1 голос
/ 16 июня 2010

Эти значения выглядят как стандартные свойства web.config SharePoint. Когда вы создаете веб-часть SharePoint, она развертывается в виртуальном каталоге IIS, в котором размещается сайт SharePoint, на котором есть собственный (очень большой) файл web.config, а НЕ файл web.config приложения.

В зависимости от вашей производственной среды вы можете обновить файл SharePoint web.config, указав нужные значения, и ваш код должен работать. Если вы не можете обновить файл web.config, вы можете использовать отдельный конфигурационный файл в каталоге IIS, в который вы развертываете (пользовательский код, а затем прочитать его), или, возможно, пакет свойств, связанный с каждым семейством сайтов SP, для которого вы бы хотели необходимо добавить свои значения с помощью кода.

...