Лучше создать типизированный класс:
public class ArticlePreview
{
public int ID {get;set;}
public string Title {get;set;}
}
, затем:
public List<ArticlePreview> LastFive()
{
return _siteDB.Articles.OrderByDescending(a => a.LastModified)
.Take(5).Select(a => new ArticlePreview(){ Title = a.Title,
ID = a.ID })
.ToList();
}
или, поскольку вы используете C # 4.0, вы можете выбрать, какие свойства возвращать:
public static List<dynamic> LastFive(Func<Article, dynamic> func)
{
return _siteDB.Articles.OrderByDescending(a => a.LastModified)
.Take(5).Select(a => func(a)).ToList();
}
Для использования:
var articlePreviews = LastFive(a => new { a.Title, a.ID });
//articlePreviews[0].Title
//articlePreviews[0].ID