Как проверить значение режима аутентификации в Web.Config без ссылки на System.Web

У меня есть класс, которому нужно проверить режим аутентификации из файла web.config.

Пример:

<authentication mode="Forms" />

или

<authentication mode="Windows" />

Теперь я знаю, что это можно довольно легко сделать с помощью следующего кода:

AuthenticationSection sec = ConfigurationManager.GetSection("system.web/authentication");
if (sec.Mode == "Windows")
{ ... }

Моя проблема в том, что этот класс / проект упоминается в моем веб-проекте, а также Проект WinForms. Проект WinForms требует .NET 4.0 Client Profile Framework (мы не хотим требовать полную .NET 4 Framework, если это возможно). Если я не ошибаюсь, профиль клиента не содержит System.Web.dll.

Есть ли способ проверить это значение без ссылки на System.Web (и желательно без ручного анализа файла конфигурации)?

]Я пытался:

object authSection = ConfigurationManager.GetSection("system.web/authentication");
if (authSection.ToString() == "Windows")
{ ... }

Однако ToString () просто возвращает строку «System.Web.Configuration.AuthenticationSection».

Спасибо!

7
задан Adam Plocher 28 April 2011 в 23:48
поделиться