У меня проблемы при извлечении объекта из базы данных с получением фреймворка, чтобы также получить массив в объекте. Я обнаружил, что для подобъектов .Include («подобъект»), кажется, работает, но я не могу заставить его работать для массивов или списков.
Моя модель:
public class RunData
{
[Key]
[Required]
public int id { get; set; }
public List<RunElement> Runs { get; set; }
public string[] DataLabels { get; set; }
}
Список объектов:
public class ProgramEntities:DbContext
{
public DbSet<RunData> RunData { get; set; }
public DbSet<RunElement> RunElement { get; set; }
}
Код контроллера:
public ViewResult Details(int id)
{
RunData rundata = (from RunData in db.RunData.Include("Runs").in where RunData.id == id select RunData).First();
return View(rundata);
}
У меня были всевозможные проблемы, связанные с тем, что я не возвращал список объектов Runs, но когда я сделал .Include ("Runs"), которое решило проблему Итак, теперь моя проблема в строковом массиве DataLabels. Если я пытаюсь .Include ("DataLabels"), программа завершается неудачно и говорит:
Указанный путь включения недействителен. EntityType
Program_Dataviewer.Models.RunData не объявляет навигацию
свойство с именем 'DataLabels'.
Я искал в Интернете некоторые, я не вижу четких ответов. Спасибо за помощь.