1
public class PersonBrief
{
    public int Id { get; set; }
    public string Picture { get; set; }

    public PersonBrief(Person person)
    {
        Id = person.Id;
        Picture = person.Picture;
    }
}

public class Person : PersonBrief
{
    public string FullName { get; set; }
}

var results = session.Query<Person>()
   .Select(x => new PersonBrief(x))
   .ToList();

Assert.IsNull(results[0] as Person); // Fails

这是一个错误吗?如果不是,那么只选择我感兴趣的字段的正确方法是什么?

4

1 回答 1

1

如果您在之前移动它会起作用,但这将在客户端上完成工作。.ToList.Select

如果您想在服务器上执行此操作,则需要As在查询中使用,并且需要一个静态索引来执行TransformResults. 请参阅这些文档

于 2013-05-07T14:27:05.240 回答