文件结构:
class UserAccountInfo
{
public String Id { get; set; }
public AccountType AccountType { get; set; }Servicetax
public String MainAccountMobileNo { get; set; }
public UserStatus Status { get; set; }
public String EmailId { get; set; }
public String DisplayName { get; set; }
**public Object User { get; set; }**
}
对象存储帐户类型中提到的任何类型的实例。可以使用 Accountype for ex 找到存储在对象中的类型;如果 Accountype 是客户,那么存储在对象中的实例将是 AccountinfoCustomer 等等。因此,我尝试使用它进行查询,但从 raven 获得以下异常。
var Result = sess.Query<UserAccountInfo>().Where(x => x.AccountType == usertype && ((AccountInfoCustomer)x.User).Customerstatus == CustomerStatus.Pending);
{"Url: \"/indexes/dynamic/UserAccountInfos?query=AccountType%253ADistributor%2520AND%2520User).Customerstatus%253APending&start=0&pageSize=128&aggregation=None\"\r\n\r\nSystem.ArgumentException: 字段 ') _Customerstatus' 未编入索引,无法在 Raven.Database.Indexing.Index.IndexQueryOperation.AssertQueryDoesNotContainFieldsThatAreNotIndexes() 处查询未编入索引的字段\r\n