2015-03-04 3 views
1

Я пытаюсь создать условный statment в ASP.NET MVC 4 и Entity Framework. Мне нужно создать список моделей, где идентификатор из одной таблицы будет равен данным в таблице другой модели. Как правильно это условное выражение использовать Linq? Ниже приведен код, который я до сих пор:.Как условно добавить список в ViewData.Model, если 2 значения данных из двух разных таблиц DB равны в ASP.NET MVC 4?

public ActionResult Index() 
{ 
     _db = new IntegrationWebDBEntities(); 
     //This is the statement i am having trouble with. 
     ViewData.Model = _db.Requests.Where(r => r.id == _db.Jobs.Where(j => j.RequestID)).ToList(); 
     return View(); 
} 

мне нужно только добавить «модель запроса на ViewData, если идентификатор таблицы запроса равно значению RequestID в таблице Работа Примечание : две колонки связаны в БД SQL

+2

Какой у вас отношение между Запросом два моделей и рабочими местами это одно. один или один ко многим? –

+1

Yea h, у Правэна есть хороший момент. Это поможет понять схему и отношения здесь немного лучше. Кроме того, может ли это значение быть нулевым в другой таблице? –

+0

Значение может быть нулевым, если задание не было запущено для запроса. Запрос и работа связаны только с Job.RequestID и Request.ID. Запрос также связывается с другими таблицами с помощью Request.ID. – antman1p

ответ

1

вы можете попробовать, как это:.

public ActionResult Index() 
{ 
    _db = new IntegrationWebDBEntities(); 

    ViewData.Model = (from r in _db.Requests 
        from j in _db.Jobs 
        where r.id == j.RequestID 
        select r).toList(); 
    return View(); 
} 
+0

LOL. Я просто понял это и заработал минутку, прежде чем вы разместили это! Оно работает! Спасибо! – antman1p