A NullReferenceException
бросается, когда мы пытаемся получить доступ к свойствам нулевого объекта или когда значение строки становится пустым, и мы пытаемся получить доступ к строковым методам.
Например:
string str = string.Empty;
str.ToLower(); // throw null reference exception
Public Class Person {
public string Name { get; set; }
}
Person objPerson;
objPerson.Name /// throw Null refernce Exception
Для двоичных (и особенно больших, хотя ваш случай с «многими» из них также может применяться), рекомендуется использовать метод Core Data для хранения метаданных, , включая путь к файлу к самому фактическому двоичному. Таким образом, вы будете хранить эти вещи где-нибудь в песочнице приложения (т. Е., Возможно, в качестве подкаталога вашего создания в каталоге «Документы»). Затем вы можете использовать [NSData dataWithContentsOfFilePath]
или аналогично, чтобы фактически получить байты, когда вы хотите их воспроизвести, но ваши выборки Core Data не замедляются, пытаясь перекосить эти байты.
Определенно возьмите посмотрите видео WWDC по оптимизации Core Data. Отличные примеры использования инструментов и дополнительных «SQL Debug Timing» позволяют убедиться, что то, что вы оптимизируете, действительно оптимизировано. :) [/ Д2]