У меня есть две таблицы,
Таблица обратной связи и таблица шагов. Каждый отзыв имеет несколько шагов. Если я использую LINQ с методом соединения, он возвращает одно и то же количество элементов шага (obj) в FeedbackViewModel, и каждый из них содержит только 1 единственный шаг. Я имею в виду очень похоже на возврат SQL.
FeedbackViewModel[0]{FeedbackID = 1,FeedbackName="NameA", Steps{Step1}}
FeedbackViewModel[1]{FeedbackID = 1,FeedbackName="NameA", Steps{Step2}}
FeedbackViewModel[2]{FeedbackID = 1,FeedbackName="NameA", Steps{Step3}}
НО мне нужен только один объект FeedbackViewModel, который содержит много шагов.
FeedbackViewModel[0]{FeedbackID = 1,FeedbackName="NameA", Steps{Step1, Step2, Step 3 etc..}
Я могу сделать это foreach Loop, но это не выглядит профессионально.
Спасибо за помощь
public class Feedback
{
public int FeedbackID { get; set; }
public string FeedbackName { get; set; }
}
public class StepModel
{
public int StepID { get; set; }
public int FeedbackID { get; set; } = 0;
public int StepNumber { get; set; }
public string StepDetail { get; set; }
public virtual Feedback FeedBack { get; set; }
}
public class FeedbackViewMODEL
{
public int FeedbackID { get; set; }
public string FeedbackName { get; set; }
public List<StepModel> Steps { get; set; }
}
var quote = from feed in FeedBacks
join stp in StePs on feed.FeedbackID equals stp.FeedbackID
where feed.FeedbackID == id
select new FeedbackViewMODEL
{
Step = stp;
}