Ich habe eine GridView, die an eine ICollection<UserAnswer>
die zwei Spalten anzeigen muss:
<asp:GridView ID="UserAnswersGridView" runat="server">
<Columns>
<asp:BoundField DataField="Question.Name" HeaderText="Question Name" SortExpression="QuestionID" />
<asp:BoundField DataField="Score" HeaderText="Score" SortExpression="Score" />
</Columns>
</asp:GridView>
Aber ich erhalte die Fehlermeldung:
Ein Feld oder eine Eigenschaft mit dem Namen 'Question.Name' wurde in der ausgewählten Datenquelle nicht gefunden.
Jede UserAnswer
hat eine QuestionId
Wert, den ich zur Abfrage des Fragennamens verwenden würde. Im Code würde ich einfach aufrufen userAssessment.Question.Name
aber wie würde ich dies mit einer gebundenen Spalte in einem GridView tun, ohne einen neuen Typ zu erstellen?
Als Referenz ist dies die Methode, die die Daten zurückgibt:
public static ICollection<UserAnswer> GetUserAnswers(Int32 userAssessmentId)
{
DataContext database = new DataContext(GetConnectionString());
return database.UserAnswers.Where(u => u.UserAssessmentId == userAssessmentId).ToList();
}
Tut mir leid, wenn diese Erklärung nicht sehr klar ist!