Entity Framework Соедините две таблицы вместе для отображения в виде MVC - PullRequest
0 голосов
/ 08 ноября 2018

Я новичок в Entity Framework и LINQ, и у меня возникли трудности с соединением двух таблиц для представления, чтобы его можно было отобразить конечному пользователю. У меня есть список цен, которые отображаются в евро в одной таблице, а в другой таблице у меня есть таблица обменных курсов. В настоящее время это отображается только в евро, и я хотел бы отобразить это в фунтах стерлингов.

Ранее я мог вернуть таблицу одного представления из моего контроллера, используя следующее:

return View(db.Prices.ToList());

Теперь, когда я пытаюсь вернуть две таблицы, я не уверен, что мне нужно делать, но я попробовал следующий код для объединения таблиц:

var result = (from a in db.Prices
              join b in db.ExchangeRatse on a.TRADE_DATE equals b.TRADE_DATE

В классе "Цены" нет столбца для цены в фунтах стерлингов, поэтому мне нужно умножить цену в евро на курс обмена для торгового дня и отобразить его в моем представлении, но в качестве вспомогательной модели для представления выбрано "Цены", могу ли я лучше для этого придумать модель представления или это можно сделать проще?

1 Ответ

0 голосов
/ 08 ноября 2018

Вам нужно что-то вроде:

var result = (from a in db.Prices
          join b in db.ExchangeRatse on a.TRADE_DATE equals b.TRADE_DATE)
          .Select(x => new {
          PriceInEuro = x.a.PriceInEuro,
          PriceInSterling = x.a.PriveInEuro * x.b.ExchangeRate})
          .ToList();

Предупреждение - не проверено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...