Я продолжаю получать NullReferenceException
, пытаясь перебрать пустую запись в строке.
public class Person
{
public int ID { get; set; }
public string Name { get; set; }
public Address Address { get; set; }
public int AddressID { get; set; }
}
public class Address
{
public int ID { get; set; }
public string FirstLine { get; set; }
public string SecondLine { get; set; }
}
С шаблоном лесов по умолчанию _context.Person.Include(c => c.Address);
Вид работает нормально, если есть адрес или нет.
Однако теперь я заменяю индексную страницу по умолчанию новой сеткой, которая загружается через AJAX с механизмом фильтрации и подкачки страниц. Для этого мне нужно преобразовать данные в мой ViewModel
Я хочу отображать адрес в виде текста. Я пробовал следующее:
var tmp = _context.Person.Include(x => x.Address).ToList();
tmp.ForEach(x => vm.List.Add(new IndexListItem()
{
Name = x.Name,
Address = x.Address.FirstLine + " " + x.Address.SecondLine,
ID = x.ID
}));
Но при отладке Address кажется всегда нулевым, даже если в строке есть данные.
Я почти уверен, что могу сделать это в стандартном цикле foreach и выполнить проверку if null, но я не могу не почувствовать, что это довольно просто, и я слишком усложняю это.
Есть ли более простой способ вернуть мне нужную информацию об адресе?