NHibernate的。 我需要从sql数据库中获取列类别中的所有值。
我需要放入一个List,并将其返回。
我有这个:
public IList<Movie> GetMovieCategories()
{
using (ISession session = NHibernateSessionBuilder.OpenSession())
{
return session.CreateCriteria(typeof(Movie)).List<Movie>();
}
}
这个问题就是返回所有表“Movie”,而我只需要“Category”列。
我该怎么做?
答案 0 :(得分:0)
应该可以做这样的事情(假设category是一个字符串):
public IList<string> GetMovieCategories()
{
using (ISession session = NHibernateSessionBuilder.OpenSession())
{
return session.QueryOver<Movie>()
.Select(c => c.Category)
.List<string>();
}
}
这也假设您正在使用nhibernate 3.x。
答案 1 :(得分:0)
试试这个:
public IList<string> GetMovieCategories()
{
using (ISession session = NHibernateSessionBuilder.OpenSession())
{
return session.CreateCriteria(typeof(Movie)).SetProjection(Projections.Property("Category")).List<string>();
}
}