Определение того, работаю ли я в SharePoint

Есть ли способ для моего приложения ASP.net узнать, работает ли оно в SharePoint (2010), но без ссылки на сборки SharePoint? (Так что я не могу просто проверить, является ли SPContext.Current нулевым.)

Интересно, возможно ли получить все загруженные сборки по имени? Поэтому, если я вижу, что мой AppDomain содержит сборку Microsoft.SharePoint, значит, я нахожусь в SharePoint.

Пример использования: сборка также выполняется вне SharePoint, но для обращения к библиотекам DLL SharePoint требуется их развернуть (возможно, не из-за лицензирование) или получение исключений при доступе к методу SharePoint.

В настоящее время я использую условную компиляцию, но я бы хотел уйти от этого и использовать DI-механизм для выбора одного из двух классов, в зависимости от того, ' м в SharePoint.

6
задан Michael Stum 3 June 2011 в 20:11
поделиться