Показать данные из двух моделей с одинаковыми именами столбцов и одинаковыми значениями в ASP.NET

1

Я новичок в ASP.NET, у меня есть только опыт в С# Windows Form и SQL Server. Теперь я запускаю свой новый проект в ASP.NET MVC и уже имею базу данных от моего клиента. У этой модели есть две одинаковые названия столбцов:

             Table 1
---------------------------------
| Location | Item | Model | Tag |
---------------------------------
|    1     |  10  |  A5   | 221 |
|    2     |  10  |  A6   | 233 |
|    3     |  12  |  A8   | 332 |
|    4     |  15  |  C1   | 223 |

             Table 2
-------------------------------------------------
| Location | Item | Model | Tag | DWeek | DYear |
-------------------------------------------------
|    1     |  10  |  A5   | 221 |  01   |  15   |
|    2     |  10  |  A6   | 233 |  01   |  15   |
|    3     |  12  |  A8   | 332 |  02   |  15   |
|    4     |  15  |  C1   | 223 |  03   |  15   |

Я просто хочу показать данные, которые имеют одно и то же местоположение и элемент в одной таблице, я не знаю, как запрашивать в инфраструктуре Entity, я знаю, как кодировать SQL, и я думаю, что это выглядит так:

select
    r.Location
    ,r.Item
    ,d.Location
    ,d.Item
    ,d.DWeek
    ,d.DYear
    ,r.Model
    ,r.[Tag No]
    ,d.[Tag No]
from Register r, Due d
where r.Location = d.Location
    and r.Item = d.Item

Мой вопрос заключается в том, как запросить подобное в структуре Entity для отображения данных в представлении, и можно ли одновременно обновить и создать две модели?

  • 1
    Всегда используйте правильный синтаксис INNER JOIN . ..from Register r INNER JOIN Due d ON r.Location = d.Location and r.Item = d.Item
  • 0
    Не должно сильно отличаться между MVC и WinForms - можно использовать LINQ to Entities с обоими. Подсказка : код на C # будет очень похож на ваш SQL
Теги:
sql-server
entity-framework
asp.net-mvc

1 ответ

0
Лучший ответ

Я использую выражение Lambda

var Query=Register.Join(Due,r=>r.Location,d=>d.Location,(r,d)=>new {r,d}).Where(
X=>X.r.Location = X.d.Location &&  X.r.Item = X.d.Item).Select(X=>new {
LOCATION_1 =X.r.Location;
ITEM_1=X.r.Item;
LOCATION_2=X.d.Location;
ITEM_2=X.d.Item;
DWEEK=X.d.DWeek;
DTEAR=X.d.DYear;
MODEL=X.r.Model;
TAGNO_1=X.r.Tag_No;
TAGNO_1=X.d.Tag_No;
}).ToList();
  • 0
    Спасибо за ваш ответ.
  • 0
    ответ работает ?????

Ещё вопросы

Сообщество Overcoder
Наверх
Меню