Я довольно плохо знаком с массивами в C # и привык хранить массу данных в строке и в файлах INI, а затем разбивать их на базовые массивы с помощью разделителей ... так что, да, моих знаний почти не существует.
Мой основной класс формы начинает это определение:
public CAirportData[] _AirportData; //size not known
Это метод, который я использую для создания массива:
...string[] airports = possibleAirports.Split(','); //size is known
foreach (string airport in airports)
{
string[] rwys = inif.Read(airport, "rwys").Split(':'); //size is known (2)
_AirportData = new CAirportData[] { new CAirportData() { icao=airport, depRwy=rwys[0], arrRwy=rwys[1] } };
}
Я знаю, что это просто сводитсяк моему ограниченному знанию объектов и массивов.Но я не могу найти что-либо в Интернете, что использует такие вещи.Я попытался скомбинировать код других людей с небольшим успехом.
Мне нужно, чтобы массив _AirportData был доступен вне формы, а значит, публично и объявлен вне каких-либо методов.Я полагаю, что основная проблема заключается в том, что я перезаписываю массив, и в каждом аэропорту я создаю новый массив, следовательно, теряю предыдущий.Я пытался переместить .. = new CAirportData [] во все виды мест, но Visual Studio это не нравится.
Ниже приведено определение класса для CAirportData:
public class CAirportData
{
public string icao { get; set; }
public string depRwy { get; set; }
public string arrRwy { get; set; }
public override string ToString()
{
string result = string.Format("ICAO: {0}, Dep: {1}, Arr: {2}", this.icao, this.depRwy, this.arrRwy);
return result;
}
}
public class CMRunways
{
public string icao { get; set; }
public string depRwy { get; set; }
public string arrRwy { get; set; }
}
Многиезаранее спасибо за любую помощь!