sql >> Databáze >  >> RDS >> Sqlserver

Entity Framework a vztahy (1 až mnoho)-(mnoho až 1) (1 - * * - 1).

Nepotřebujete žádné speciální RowId v Worker2Job . Stačí definovat svůj Worker2Job pouze se dvěma sloupci:WorkerId a JobId a udělejte z obou těchto sloupců složený primární klíč tabulky. Jakmile přidáte všechny tři tabulky do návrháře entit, automaticky se zobrazí vztah many-to-many a vytvoří se pouze dvě entity se správným vztahem v modelu. Worker entita bude mít Jobs navigační vlastnost a Job bude mít Workers navigační vlastnost. Budete moci napsat dotaz jako:

var query = context.Jobs.Include("Worker").Where(j => j.JobId == someId);

Takový dotaz načte úlohu se všemi souvisejícími pracovníky a vy budete mít přístup k jejich jménům.




  1. Jaký je rozdíl mezi velikostí fondu připojení knihovny ORM/tvůrce dotazů a velikostí fondu připojení pgbouncer?

  2. Jak získat informace o ID připojení na vyžádání?

  3. Proč používat úroveň izolace READ UNCOMMITTED?

  4. Zend_Db:Jak získat počet řádků z tabulky?