Как проверить, существует ли var allinterconnect или нет.
TextLog.log(" получение данных InterConnect Bay из OneView "+ con.oneViewIP + " инициировано");
Список<класс IDictionary&ЛТ;строку, строку&ГТ;&ГТ; OVList = новый список<класс IDictionary&ЛТ;строку, строку&ГТ;&ГТ;();
Список<класс IDictionary&ЛТ;строку, строку&ГТ;&ГТ; NetworkList = новый список<класс IDictionary&ЛТ;строку, строку&ГТ;&ГТ;();
var allinterconnect = getAllData("https://" + con.oneViewIP + "/rest/interconnects", con)["члены"];
и требуемая функция getalldata-
public static JObject getAllData(string url, Connection conn)
{
AllJsonData создание экземпляра = новое создание экземпляра();
Варе данных tempdata = CallRestApi(URL-адрес, "вам", соед.код сеанса, штат Коннектикут.xApiVersionString);
ВАР dictKeys = данных tempdata.Properties().Select(p => p.Name).Список();
если (диктует.Содержит("всего") && диктофоны.Содержит("count"))
{
ВАР tempDataTotal = int32 значение.Синтаксический анализ(данных tempdata["общий"].Метод toString());
ВАР tempDataCount = int32 значение.Синтаксический анализ(данных tempdata["количество"].Метод toString());
if (tempDataTotal == tempDataCount)
возврат tempData;
var perPageCount = (tempDataCount < tempDataTotal) ? tempDataCount : tempDataTotal;
int loopCount = (int)математика.Потолок((двухместная)tempDataTotal / (двуспальная)tempDataCount);
allJsonData = данных tempdata;
for (int i = 1; i < loopCount; i++)
{
var tempMembers = CallRestApi(url + "?start=" + (i * perPageCount).ToString() + "&count=" + perPageCount.ToString(), "GET",
conn.sessionID, conn.xApiVersionString)["члены"];
allJsonData["сотрудники"] = (allJsonData["сотрудники"].ToString() + ", " + tempMembers.Метод toString()).Метод toString();
}
allJsonData["count"] = tempDataCount;
allJsonData["сотрудники"] = создание экземпляра.Синтаксический анализ(allJsonData["сотрудники"].Метод toString());
}
еще
{
allJsonData = данных tempdata;
}
вернуть allJsonData;
}
Что я уже пробовал:
вот мы и подобрались OneView на ИС ,для каждого IP-адреса ,мы пытаемся вывезти его свойства.как поставить оператор if для var allinterconnect, т. е. если uri-"/rest/interconnects" существует или нет.При использовании var allinterconnect,используя getalldata, он дает следующую ошибку-Ошибка чтения JObject из JsonReader. Текущий элемент JsonReader не является объектом: StartArray. Путь ", строка 1, Позиция 1.
Ошибка находится в строке getalldata-
allJsonData["сотрудники"] = создание экземпляра.Синтаксический анализ(allJsonData["сотрудники"].Метод toString());
пожалуйста, помогите мне.
Richard MacCutchan
Проверьте ответ от звонка до звонка. getAllData
; не просто предполагайте, что это работает.
Jochen Arndt
Это похоже на ваш вопрос https://www.codeproject.com/Questions/1235722/I-tried-to-check-if-allinterconnectmembers-is-empt
И на него все равно нельзя ответить, не зная, какой тип возвращается функцией getAllData() и что происходит, когда вызов завершается неудачей.
#realJSOP
Вот почему я рассматриваю возможность использования var
типы как зло. Если вы хотите использовать язык без типов, переключитесь на VB.