public class Category
{
public virtual int Id { set; get; }
public virtual string Name { set; get; }
public virtual int CategoryOrder { set; get; }
public virtual IEnumerable<News> LatestNews { set; get; }
}
public sealed class CategoryMap :ClassMap<Category>
{
public CategoryMap()
{
LazyLoad();
Id(x => x.Id);
Map(x => x.Name);
Map(x => x.CategoryOrder);
HasMany(x => x.LatestNews);
}
}
IRepository<Category> newsRepo = new NHibernateRepository<Category>();
using(var session = newsRepo.GetSessionFactory().OpenSession())
using(var transaction = session.BeginTransaction())
{
var result = session.Query<Category>().OrderBy(x => x.CategoryOrder);
transaction.Commit();
}
我有這個類的類我想要顯示一個(只有一個)每個類別的新聞。這是正確的映射?或者我應該改爲Map
HasMany映射但得到一個元素或得到一些
當我運行這個,它得到所有新聞每個類別。但我想每個類別的最新消息(只有一個)。我可以通過查詢News.DateUpdated
獲得最新消息。
我應該如何更改查詢來獲得每個類別的新聞?
或我如何獲得一些新聞?即:限制我可以查詢的新聞數量?