Ich habe eine Klasse Author.cs
wie:Return Liste der benutzerdefinierten Klasse mit Linq
public class Author
{
public Author()
{ }
public int _AuthorID { get; set; }
public string _AuthorName { get; set; }
public List<Paper> _Papers { get; set; }
}
und eine andere Klasse Paper.cs
wie:
public class Paper
{
public Paper()
{ }
public int _PaperID { get; set; }
public List<int> _CoAuthors { get; set; }
public int _VenueID { get; set; }
public int _PaperCategory { get; set; }
public int _Year { get; set; }
}
ich eine Methode in Author.cs
Klasse haben wollen, die Autoren zurück für gegebenes Jahr und Autor zwischen den angegebenen Jahren.
Ich habe versucht, wie folgend:
public List<Author> GetAuthorsByYear(List<Author> _fullList, int _year)
{
return _fullList.Where(_author => _author.GetPaperYear() == _year).ToList();
}
public List<Author> GetAuthorsBetweenYears(List<Author> _fullList, int _startYear, int _endYear)
{
return _fullList.Where(_author => _author.GetPaperYear() >= _startYear && _author.GetPaperYear() <= _endYear).ToList();
}
Verfahren GetPaperYear()
noch nicht definiert, aber es beabsichtigt ist, ein solches Verfahren in der Klasse zu definieren Author.cs
das Ziel zu erreichen, deshalb als Dummy hier gezeigt ist.
Ebenso möchte ich Methoden haben wie:
public List<int> GetCoAuthorsByYear(int _year)
{
// How to return list of coauthors by year
}
public List<int> GetCoAuthorsBetweenYears(int _startYear, int _endYear)
{
// How to return list of coauthors between years
}
public List<int> GetVenuesByYear(int _year)
{
// How to return list of venues by year
}
public List<int> GetVenuesBetweenYears(int _startYear, int _endYear)
{
// How to return list of venues between years
}
Wie dies mit Linq erreichen?
Das ist schon Linq, was brauchst du mehr? –
Ich verstehe es wirklich nicht, was ist das Problem mit Ihrem Ansatz? –
Seine Linq aber wie ich auch oben erwähnt, ist die Methode 'GetPaperYear()' noch nicht definiert in 'Author.cs' Klasse. '_Year' ist eine Eigenschaft der' Paper.cs' Klasse, also wenn es eine Methode wie diese in 'Author.cs' Klasse gibt, dann wird Linq ie im obigen Code gezeigt nützlich sein – maliks