Я использую Entity Framework с базой данных sqlserver.
Таблица, представленная EntityObject, содержит внешние ключи для других таблиц.
Например:
ArticleID|ArticleTitle|ArticleBody|CategoryID (key to another table)
Я использую этот запрос для возврата объекта Enity:
public Article GetArticleById(int id)
{
var article = Articlerctx.Articles.Where(o=>o.ArticleID==id).FirstOrDefault();
return article;
}
Но я хочу также вернуть поля из другой таблицы (объединение, по некоторым областям не все).
Нужно ли мне определять новый класс для этой цели (класс, имеющий соответствующие поля)?
и вернуть его как:
public ArticleFull GetArticleById(int id)
{
var ret = (from article in Articlerctx.Articles
select new ArticleFull
{
ArticleID = article.ArticleID,
Title = article.Title,
CategoryTitle = article.Articles_Categories.Title,
}).Where(o => o.ArticleID == id).FirstOrDefault();
return ret;
}
Было бы безумно определять новые классы для каждой области ...