2012-03-30 12 views
2

Ich arbeite in Asp.Net 4.0 C# - MVC-3. Ich habe ein Problem und weiß nicht, wie ich es lösen soll. Ich habe 4 Tabellen und möchte Daten aus diesen Tabellen mit LINQ abrufen.LINQ Abfrage zum Abrufen von Daten aus mehreren Tabellen

TABLES

1) Project_Master

Field Names : 

    project_id (pk) 
    project_name 
    company_id (FK with company_master) 
    company_category_id (FK with Company_Category_master) 
    project_status_id (FK with Project_Status_Master) 

2) Company_Master

Field Names : 

    company_id 
    company_name 
    company_category_id (FK with Company_Category_Master) 

3) Company_Category_Master

Field Names : 

    Company_Category_Id 
    Company_Category_Name 

4) Project_Status_Master

Field Name : 

    Project_Status_Id 
    Project_Status_Name 

Dies sind die Felder, die ich .. holen müssen (mit LINQ-Abfrage)

  1. Company_Name
  2. Gesamt abgeschlossen Projektstatus mit ID (1) = Vollständig (wobei Status 1 bedeutet, abgeschlossen)
  3. Gesamtprojekt
  4. Company_category_name

Also, wie kann ich Daten mit Linq-Abfrage holen ??

Vielen Dank im Voraus ...

+2

Ihre Frage nichts mit MVC zu tun hat. Es ist alles LINQ. –

+1

Überprüfen Sie diese Frage: http://stackoverflow.com/questions/5207382/get-data-from-two-tablesjoin-mit-linq-and-return-result-into-view –

+1

Wissen Sie, was ein [JOIN] (http://en.wikipedia.org/wiki/Join_(SQL)) ist? Es gibt auch ein Join-Schlüsselwort für linq. – Stephan

Antwort

3

das unten stehende Beispiel Versuchen:

(From lse In Me.Leases, nty In Me.Entities, psg In Me.ProductionStages, lsg In LeaseStages _ 
     Where lse.LeaseName = leaseName _ 
     Select lse, lsg, nty, psg).Single 

oder Sie können auch unten verwenden, zB:

var employeesQuery = from populationTable in db.Populations 
join personTable in db.Persons on populationTable.Guid equals personTable.PopulationGuid 
join employeeTable in db.Employees on personTable.Guid equals employeeTable.PersonGuid 
select new { populationTable, personTable, employeeTable}; 
+1

Sie können _also_ verwenden? Du solltest. Das erste Beispiel ist ein kartesisches Produkt. –

+1

@GertArnold: Ja, richtig, das war mein Fehler. danke – SeeSharp

+1

Danke. Es hat mein Problem sofort gelöst! – Stan

Verwandte Themen