Я пытаюсь передать класс с настраиваемой формой в представление, но у меня есть немного беда.Невозможно неявно преобразовать тип 'System.Linq.IQueryable <Project.Models.TaskTimeLine>' в 'Project.Models.TaskTimeLine'
Это ошибка, которую я получаю.
Невозможно неявно преобразовать тип 'System.Linq.IQueryable' в 'Project.Models.TaskTimeLine'. Явное преобразование существует (вы пропускаете листинг?)
Это первый раз, когда я добавила список в класс и пытаюсь передать его как-то так.
Вот определение класса
public class TaskTimeLine
{
public Task task { get; set; } // to hold a single object
public List<DateTime> scheduledDateTime { get; set; } // to hold a collection of date times..
}
Действие контроллера по линии этого.
[Authorize]
public ActionResult Details2(int id)
{
TaskTimeLine task = new TaskTimeLine(); //create new instance of TaskTimeLine
task = (IQueryable<TaskTimeLine>)taskRepository.GetTaskAndTimeLine(id);
if (task == null)
return View("NotFound");
else
return View("Details", task);
}
Все нормально, до сих пор, поэтому я предполагаю, что здесь что-то не так.
public IQueryable<TaskTimeLine> GetTaskAndTimeLine(int taskId)
{
TaskTimeLine taskTimeLine = new TaskTimeLine(); // create new main object
taskTimeLine.scheduledDateTime = new List<DateTime>(); instanciate list object inside
taskTimeLine.task = db.Tasks.SingleOrDefault(d => d.id == taskId); read the record to fill the single task object
/// Lots of logic is performed here to add loads of date records to the list object.
/// If I add a break point and check the list I can see that all the date items have gone fine into the collection
return (IQueryable<TaskTimeLine>)taskTimeLine;
}
Единственная причина, по которой у меня так много нечетных бросков в местах, потому что казалось, что они помогли скомпилировать программу. В настоящее время он не компилируется, но я это сделал, но при выполнении фактического запроса он не работает, с тем же сообщением об ошибке.
Может ли кто-нибудь помочь, а также, возможно, добавить более полезное название для будущих людей, которые застряли в этом.
ах, поэтому я вроде как вижу, потому что я возвращаю только один объект, а не набор объектов, он не обязательно должен быть IQueryable. Коллекция находится в списке, и это нужно повторить. Имеет ли это смысл? Во всяком случае, спасибо за направление. –