人为的例子,但假设我有这些实体:
public class Root
{
public virtual Customer Customer { get; set; }
}
public class Customer
{
public virtual CustomerData Data { get; set; }
}
public class CustomerData
{
public virtual string FooName { get; set; }
}
现在,假设我想根据 FooName 的值为 Root 创建一个过滤器。直观地说,我在我的 FooMap 类中尝试了这个。使用流畅的映射。
ApplyFilter("FooNameFilter", "Customer.Data.FooName in (:argument)");
这行不通。抛出 SqlClient.SqlException 说明The multi-part identifier "Customer.Data.FooName" could not be bound.
有没有办法让过滤器以这种方式工作,或者我是否被迫将该逻辑移动到所有Query<Root>()
s 中?