ОБНОВЛЕНИЕ Рассмотрим 2 таблицы.
Таблица событий.eventID int pk status1 int status2 int
Идентификатор таблицы состояний int pk statusName varchar
теперь у каждого события есть 2 состояния, записанные в int.И я хочу показать строки событий на экране, но получить соответствующее имя статуса из таблицы состояния.Таким образом, я должен присоединить таблицу событий 2 раза к таблице состояния.используя status1, status2 в качестве идентификатора таблицы состояния.
При использовании структуры сущностей я писал такой код
join ds1 in db.Status on te.aStatus equals ds1.ID
join ds2 in db.Status on te.bStatus equals ds2.ID
select new {
Status1 = ds1.statusName,
Status2 = ds2.statusName,
}
Но теперь по некоторым причинам я не хочу использовать Entity Framework,вместо этого я хочу написать это непосредственно в SQL, я могу легко присоединиться к 2 дБ
SELECT db.Status.statusName FROM db.Main INNER JOIN
Status ON dbo.Main.aStatus = dbo.Status.ID"
, и это будет работать.но как я могу сделать второе соединение?
После SELECT я беру этот объект DataTable и получаю строки в цикле.И в этом цикле я создаю из этого списка строк.И там я должен получить 2 статуса
foreach (DataRow item in dtbProduct.Rows)
{
StatusList.Add(new JStatus()
{
Status1= item["statusName"] ???
Status2=item["statusName"] ???
Как мне получить 2 переменные для каждого статуса?