Количество TermStore равно 0 - PullRequest
2 голосов
/ 28 января 2012

Обзор Я наблюдаю действительно странное поведение с кодом, который пытается извлечь TermStore из TaxonomySession.Код выглядит следующим образом:

            using (SPSite mySite = new SPSite(url))
            {
            TaxonomySession session = new TaxonomySession(mySite);

            // Get all the TermStores associated with the provided site.
            TermStoreCollection stores = session.TermStores;
            Console.WriteLine(stores.Count);

Вот проблема:

  1. Приведенный выше код не возвращает никаких TermStores, то есть счетчик равен нулю
  2. Если я запускаю следующий скрипт PowerShell из той же командной строки, я получаю 1 TermStore в счетчике.

    $site = new-object Microsoft.SharePoint.SPSite("https://mysite") 
    $session = new-object Microsoft.SharePoint.Taxonomy.TaxonomySession($site) 
    $session.TermStores.Count 
    

Я попробовал следующее:

  1. Мой прокси приложения управляемых метаданных является частью группы прокси по умолчанию
  2. Администратор для службы управляемых метаданных настроен правильно
  3. Разрешения для службы управляемых метаданных настроены правильно
  4. Пул приложений управляемых метаданных работает под учетной записью фермы
  5. Изменение приведенного выше кода для запуска с повышенными привилегиями

Странно то, что первый блок кода вышеНЕ извлекает TermStore (s), если он скомпилирован как исполняемый файл и вызван из командного окна, которое выполняется с учетными данными фермы.В этом же окне я могу скопировать и вставить второй блок эквивалентных сценариев PowerShell и запустить его!

Кроме того, эта проблема возникает только в нашей производственной среде.Тот же исполняемый файл успешно работал в наших средах DEV, TEST и Pre Prod.

Любая помощь на этом этапе будет высоко оценена.

1 Ответ

1 голос
/ 18 февраля 2012

Мы столкнулись с точно такой же проблемой в нашей тестовой среде. Но наши серверы разработки работают как положено. Мой коллега смог сузить проблему и решить ее, обновив исправление, доступное в службе поддержки Microsoft.

Ниже приведены подробности исправления и информация, с которой он мог столкнуться при исследовании этой конкретной проблемы.

Для дополнительной информации:

  1. http://chrisforbesblogs.net/2009/12/02/the-managed-metadata-service-or-connection-is-currently-not-available
  2. http://expectedexception.wordpress.com/2011/06/15/the-managed-metadata-service-or-connection-is-currently-not-available-the-application-pool-or-managed-metadata-web-service-may-not-have-been-started-please-contact-your-administrator/

Пожалуйста, проконсультируйтесь с системным администратором перед обновлением любых исправлений для серверов. Надеюсь, это поможет вам решить проблему в вашей производственной среде.

...