Объединение таблиц БД посредством LINQ

293
10 июня 2017, 12:33

В базе данных хранятся следующие таблицы:

Books

BookID | BookName | Author | Genre | BookYear | Price | Count | Publishing |

Users

UserID | FullName | Login | Password | Adress | Telephone |

Sellings

SellingID | UserID | BookID | SaleCount | SaleDate |

При помощи Sellings нужно объединить данные из всех троих таблиц в следующею:

Report

SellingID | BookID | BookName | Price | SaleCount | FullName | SaleDate

Помогите, пожалуйста, объединить данные в таблицу Report при помощи LINQ запроса(если есть способы по лучше, буду рад почитать). Также нужно чтобы можно было просматривать данные за определенный период(SaleDate). Выходная таблица должна быть DataTable.

К каждой из таблиц обращаюсь так:

this.bookstoreDataDataSet.Books;
this.bookstoreDataDataSet.Users;
this.bookstoreDataDataSet.Sellings;

В качестве БД использую MS Access

Answer 1

Если я Вас правильно понял, Вам нужен такой запрос

IEnumerable<Report> report = (from s in sellings
                              join b in books on s.BookID equals b.BookID
                              join u in user on s.UserID equals u.UserID
                              select new Report
                              {
                                    BookID = b.BookID,
                                    BookName = b.BookName,
                                    FullName = u.FullName,
                                    Price = b.Price,
                                    SaleCount = s.SaleCount,
                                    SaleDate = s.SaleDate,
                                    SellingID = s.SellingID
                              });
READ ALSO
Не запускается таймер в Thread

Не запускается таймер в Thread

Есть код таймера который должен быть запущен в отдельном потоке при клике мышью

248
Как вы очищаете проект от ненужных DLL в Visual Studio?

Как вы очищаете проект от ненужных DLL в Visual Studio?

Например, вы скачали какую-то модную DLL из Nuget, а следом за ней подтянулась тонна других DLL(зависимости)

512
WebClient неверно скачивает файл

WebClient неверно скачивает файл

Есть хостинг на котором лежит файлФайл создан из dll библиотеки прочитанной ReadAllBytes и сохраненной WriteAllBytes как массив байтов, на это не важно

350
Unity, Не работает переход на другую сцену

Unity, Не работает переход на другую сцену

Делаю игрушку на andriod, есть две сцены main и menuСоответственно main - сама игра, а menu - игровое меню до запуска

582