В приведенном ниже коде страницы определены как
public SortedDictionary<DateTime, float[]> Pages { get; set; }
Я пытаюсь динамически увеличить размер этого массива. Кто-нибудь может подсказать, как увеличить размер самого внутреннего поплавка []?
var tt = currentContainer.Pages[dateTime];
Array.Resize<float>(ref tt, currentContainer.Pages.Count + 1);
Fail 1
Я попробовал следующий код и вывел исключение индекса из диапазона
SortedDictionary<DateTime, float[]> Pages = new SortedDictionary<DateTime,float[]>();
float[] xx = new float[1];
xx[0] = 1;
DateTime tempTime = DateTime.UtcNow;
Pages.Add(tempTime, xx);
var tt = Pages[tempTime];
Array.Resize<float>(ref tt, Pages.Count + 1);
Pages[tempTime][1] = 2;
Fail 2
Следующее дает ошибку времени компиляции (свойство, индекс или динамический член не могут использоваться в качестве значения ссылки)
SortedDictionary<DateTime, float[]> Pages = new SortedDictionary<DateTime,float[]>();
float[] xx = new float[1];
xx[0] = 1;
DateTime tempTime = DateTime.UtcNow;
Pages.Add(tempTime, xx);
var tt = Pages[tempTime];
// The line below is different from Fail 1 above ... compile time error
Array.Resize<float>(ref Pages[tempTime], Pages.Count + 1);
Pages[tempTime][1] = 2;
Вопрос
Какой самый эффективный ответ для изменения размера этого массива?
Изменится ли ответ, если вероятно, что окончательный размер будет 100-200 поплавков или 700-900 поплавков?
Что если я изменю размер своего распределения с +1 на +128? .. или больше?