Silverlight 如何使用RIA服务QueryBuilder<;T>;
根据QueryBuilder的参数列表,T对象的EntityQuery是查询整形的候选对象。然而,我这样做的尝试没有成功。我想知道是否有人知道如何在T的EntityQuery上使用ApplyTo方法,以便在客户端上对其进行过滤 这就是我到目前为止所做的: 以下代码段成功返回存储在特定数据库表中的所有自定义实体Silverlight 如何使用RIA服务QueryBuilder<;T>;,silverlight,ria,query-builder,Silverlight,Ria,Query Builder,根据QueryBuilder的参数列表,T对象的EntityQuery是查询整形的候选对象。然而,我这样做的尝试没有成功。我想知道是否有人知道如何在T的EntityQuery上使用ApplyTo方法,以便在客户端上对其进行过滤 这就是我到目前为止所做的: 以下代码段成功返回存储在特定数据库表中的所有自定义实体 var ctx = new CustomDomainContext(); var query = ctx.GetAllCustomEntitiesQuery(); var lo = ct
var ctx = new CustomDomainContext();
var query = ctx.GetAllCustomEntitiesQuery();
var lo = ctx.Load<CustomEntity>(query);
lo.Completed += (s, e) =>
{
var result = lo.Entities.ToList();
};
var ctx=newCustomDomainContext();
var query=ctx.getAllCustomEntitysQuery();
var lo=ctx.Load(查询);
lo.已完成+=(s,e)=>
{
var result=lo.Entities.ToList();
};
下面的代码段尝试使用RIA服务QueryBuilder来形成上面使用的查询,以限定结果。不幸的是,所有的数据仍然返回
var ctx = new CustomDomainContext();
var query = ctx.GetAllCustomEntitiesQuery();
var builder = new QueryBuilder<CustomEntity>();
builder.Where(c => c.Id == 1);
builder.ApplyTo(query);
var lo = ctx.Load<CustomEntity>(query);
lo.Completed += (s, e) =>
{
var result = lo.Entities.ToList(); --> Still returns all entities!
};
var ctx=newCustomDomainContext();
var query=ctx.getAllCustomEntitysQuery();
var builder=new QueryBuilder();
其中(c=>c.Id==1);
builder.ApplyTo(查询);
var lo=ctx.Load(查询);
lo.已完成+=(s,e)=>
{
var result=lo.Entities.ToList();-->仍然返回所有实体!
};
毫无疑问,我没有正确使用QueryBuilder。有没有人有过将QueryBuilder应用于T的EntityQuery的经验?我意识到了我的错误。QueryBuilder的ApplyTo方法不会更改原始EntityQuery,而是返回一个新的EntityQuery。因此,我所需要做的就是将QueryBuilder返回的EntityQuery加载到DomainContext的load方法中
lo.Completed += (s, e) =>
{
foreach(CustomEntity item in lo.Entities)
{
list.add(item);
}
};