Wie zum verknüpfen von zwei Tabellen mit Linq in MVC-controller

Ich habe zwei sql-Tabellen mit einer 1:n-Beziehung. Für meine ASP.NET MVC-Lösung habe ich aktiviert EF-code-first-migration und die richtige DBContext und Klassen gegründet.

Möchte ich schreiben, ein MVC-controller, der verbindet die beiden Tabellen, um auf bestimmte Datensätze für die Anzeige im Blick.

Sind hier die beiden Klassen:

        public class Tbl_Group_Communities : Entity
{
    public string GKZ { get; set; }
    public int G_ID { get; set; }
}

    public class Katastralgemeinden : Entity
{
    public string KGNr { get; set; }
    public string KGName { get; set; }
    public string GKZ { get; set; }
    public string GemeindeName { get; set; }
}

Bisher habe ich in der Lage zu kommen mit einem funktionierenden controller für die Tische selbst aber nicht verbunden. Unten der funktionierende controller für die erste Klasse:

            public IEnumerable<Tbl_Group_Communities> Get()
    {
        var entities = UnitOfWork.GetAll<Tbl_Group_Communities>().ToList();
        return entities;
    }

Denke ich, kann die Verknüpfung erfolgen, die mit Linq, aber ich habe keine Ahnung, wie/wo anfangen.
Die gemeinsamen Schlüssel für beide Tabellen wird GKZ; so die Verknüpfung eingerichtet werden sollten, über GKZ. Und dann muss ich auswählen bestimmter Datensätze aus der verknüpften Datensätze, in denen G_ID = einem bestimmten Wert.

Wenn jemand könnte mir etwas helfen, wäre ich sehr dankbar.
Manu

Ich bin sicher, dass jemand kann Ihnen zeigen, wie zu tun, die beitreten, aber ich würde raten, Sie Forschung auf, wie zu konfigurieren, code first-Beziehungen. Wenn Sie setup die richtigen Modelle mit Navigations-Eigenschaften, es ist ziemlich einfach. Ich würde Ihnen raten, suchen Sie in ViewModels.
Meinst du, dass Sie nicht finden können, eine Dokumentation, wie Sie schreiben, die Join Aussage? Abgesehen davon, es ist nicht klar, was UnitOfWork produzieren kann. Tut es auch eine Katastralgemeinden? Und wenn ja, was bedeutet GetAll zurück? Wenn es IEnumerable Beitritt ist nicht effizient überhaupt.
Ich könnte finden Sie Unterlagen, aber da bin ich Recht neu mit C# und MVC-Controller die docus waren mehr verwirrend als helfend. UnitOfWork auch Katastralgemeinden. Ich dachte, GetAll führt alle Datensätze zurück, das war nur eine Prüfung, die für eine Tabelle der controller funktioniert. Was wäre effizienter als IEnumerable?
Wenn Sie sich zwei IEnumerables, die Daten der beiden Tabellen wird der Wert in den Speicher von zwei Abfragen (dass wohl wieder viele Daten) und ging dann in den Speicher. Wenn Sie sich zwei IQueryable (kommen aus dem gleichen Kontext), die beitreten werden, übersetzt werden in eine leistungsfähige SQL-Abfrage.

InformationsquelleAutor Manu | 2016-10-29

Schreibe einen Kommentar