Ich habe die beiden TabellenHinzufügen eines weiteren Tabelle zu einer gruppierten Linq-Abfrage
Person
__________
PersonID
PersonName
DOB
Status
Notes
__________
NoteID
PersonID
NoteText
Comments
LineNo
hier einige Beispiel-Inhalt
PersonID PersonName DOB Status
1 Mark Jacobs 07/07/1961 Active
und
NoteID PersonID NoteText LineNo
123 1 Line 1 1
234 1 Line 2 2
236 1 Line 3 3
So als Endergebnis Ich möchte eine Linq-Abfrage, um so etwas anzuzeigen
PersonID PersonName DOB Note
1 Mark Jacobs 07/07/1961 Line 1, Line 2, Line 3
Ich habe eine Arbeits Linq-Abfrage für die Notes-Tabelle, möchte aber auch einige Felder von Personen Tabelle enthalten:
var result = (from n in db.Notes
group n.NoteText by n.PersonID into g
select new {
PersonID = g.Key,
Notes = g.ToList()
}).AsEnumerable()
.Select(item => new NoteGroupDTO {
PersonID = item.PersonID,
Notes = string.Join(", ", item.Notes)
}).ToList();
Ich mag Person Namen hinzufügen, DOB und Status die Liste auswählen
habe ich eine Klasse
public class PersonNoteDTO
{
public int PersonID { get; set; }
public string PersonName { get; set; }
public DateTime DOB { get; set; }
public string Status { get; set; }
public string Notes { get; set; }
}
Zu meiner Abfrage Ich habe eine Verknüpfung und order by-Klausel von Zeilennummern zu bestellen. Aber ich bin nicht sicher, wie Felder in meinem anonymen Objekt in die Auswahlliste hinzuzufügen:
var result = (from n in db.Notes
join p in db.Persons on n.PersonID=p.PersonID
orderby n.LineNo
group n.NoteText by n.PersonID into g
select new {
PersonID = g.Key,
Notes = g.ToList()
}).AsEnumerable()
.Select(item => new PersonNoteDTO {
PersonID = item.PersonID,
Notes = string.Join(", ", item.Notes)
}).ToList();
und wie wäre es mit der Bestellung von LineNo, um die richtige Reihenfolge der Zeilen zu gewährleisten? – ElenaDBA
Ich habe einen Fehler bekommen 'Kann Typ nicht implizit konvertieren '' zu 'Int'' –
ElenaDBA
@ElenaDBA - zurück - Update überprüfen –