Как проверить состояние объекта Microsoft.Web.AdministrationC#

Место общения программистов C#
Гость
Как проверить состояние объекта Microsoft.Web.Administration

Сообщение Гость »


Здравствуйте, вот мой код csharp для получения всех сайтов с сервера IIS

List iisSiteList = новый список(); ServerManager serverMgr = новый ServerManager(); Коллекция сайтов Коллекция сайтов = serverMgr.Sites; пытаться { foreach (var site в коллекции сайтов) { строка SiteState = site.State.ToString(); if (site.Name != "Веб-сайт по умолчанию") { IISObject issObject = новый IISObject () {Name = site.Name, SiteId = site.Id, State = SiteState }; iisSiteList.Add(issObject); } } вернуть iisSiteList; } поймать (Исключение e) { вернуть e.Message.ToString(); } Приведенный выше код выдает следующую ошибку

('Идентификатор объекта не представляет действительный объект. (Исключение из ' 'HRESULT: 0x800710D8)')

Причина этой ошибки заключается в том, что сайт имеет неизвестное состояние, поэтому, если я просто прокомментирую эту строку string SiteState = site.State.ToString();, она начнет работать.
>
Теперь мне нужна помощь в том, как проверить ObjectState перед присвоением его переменной. Я попробовал это

if (site.State) { строка SiteState = site.State.toString(); } еще { строка SiteState = «неизвестно» } Затем Visual Studio показывает это

CS0029: невозможно неявно преобразовать тип. «Microsfot.Web.Administration.ObjectState» на «bool»

Пожалуйста, помогите мне, как это исправить

Вернуться в «C#»