Wie frage ich LIST ab, indem ich Parameter übergebe?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie frage ich LIST ab, indem ich Parameter übergebe?

Post by Anonymous »

Ich verwende Entity Framework 5.0 und habe meine Datenbank aus einem Modell erstellt. Unten ist der Screenshot des edmx-Diagramms.

Image


Ich arbeite an der folgenden Datenstruktur:

Geben Sie mir bei gegebener Client-ID eine Liste von Theader, die zu dieser ClientID und seinen TReports gehört, also habe ich meine Modelle wie folgt modelliert:

Code: Select all

public class TReportHeaderModel
{
public int ID { get; set; }
public int ClientID { get; set; }
public string  THeaderTitle { get; set; }
public int RowNumber { get; set; }

public IList TReports { get; set; }
}

public class TReportModel
{
public int ID { get; set; }
public string  TReportName { get; set; }
public string URL { get; set; }
public int RowNumber { get; set; }
}
Wenn ich also abfrage, um Theaders und jeden Bericht für die angegebene Client-ID zu erhalten:

Ich liste zuerst die Header für die angegebene Client-ID auf:

Code: Select all

public IList GetHeadersByClient(int ClientID)
{
using (var connection = new TReportEntitiesConnection())
{
var clientHeaders= (from st in connection.THeaders
where ClientID == st.ClientID
select new TReportHeaderModel
{
ID=st.ID,
THeaderTitle=st.THeaderTitle,
RowNumber=st.RowNumber
}).ToList();

return (clientHeaders);
}
}
Und dann, um die Liste der Berichte für jeden Titel zu erhalten, und hier stecke ich fest--->

Code: Select all

public IList GetChildReportsByHeader(int THeaderID)
{
using (var connection = new TReportEntitiesConnection())
{
// ....
}
}
Anstatt es zu trennen, indem zuerst die Header nach Client und dann der Bericht nach Header-ID abgerufen werden, ist es möglich, ihn in einer Methode zu kombinieren? Entschuldigung für die verwirrende Erklärung, aber ich bin neu bei LINQ Query, also haben Sie bitte Verständnis.

Das Folgende ist die ideale Struktur für die UI-Implementierung:

Client-ID =2

Header 1
  • TReportName
  • URL
Header 2
  • TReportName
  • URL

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post