我在Atlas中有一个embedded文档,我试图从Realm中查询一个字段(即Document.ProfileTab.AadharNo),但得到 例外:System.NotSupportedException: 'The left-hand side of the Call operator must be a direct access to a persisted property in Realm. 无法处理‘c.ProfileTab.AadharNo’.‘
在领域SDK中,我try 这样查询该字段:
var v = App.realmInstance.All<App.ArogyaMainClass>().Where(
c => !string.IsNullOrEmpty(c.ProfileTab.AadharNo)
&&
c.ProfileTab.AadharNo.Equals(entryAadharNo.Text.Trim())
)
.ToList();
在球场上创建索引会有帮助吗?如果领域需要持久化字段,那么它是什么?如何使该字段持久化?我需要在赛场上设置[必填]吗?请提出一些建议.先谢谢你.
以下是领域对象模型:
public class ArogyaMainClass : RealmObject
{
[MapTo("_id")]
[PrimaryKey]
public ObjectId? Id { get; set; } = ObjectId.GenerateNewId();
[MapTo("profileTab")]
public ArogyaProfileTab ProfileTab { get; set; }
}
public class ArogyaProfileTab : EmbeddedObject
{
[MapTo("PatientName")]
public string PatientName { get; set; }
[MapTo("AadharNo")]
public string AadharNo { get; set; }
[MapTo("PhoneNo")]
public string PhoneNo { get; set; }
}