LLBLGen Pro 5.0 缓存 EntityCollectionBase.GetMulti()
LLBLGen Pro 5.0 caching with EntityCollectionBase.GetMulti()
我正在使用 LLBLGen 5.0 和 EntityCollectionBase.GetMulti(过滤器、关系)来检索 oracle 数据库中的对象。
ObjectCollection objects = new ObjectCollection ();
RelationCollection relationsToUse = new RelationCollection();
relationsToUse.Add(ObjectEntity.Relations.Object2EntityUsingObject2Id);
IPredicateExpression filter = new PredicateExpression(ObjectFields.Code == sectionCode);
objects.GetMulti(filter, relationsToUse);
我想添加缓存系统以避免多次在数据库中进行请求。
我看到 on LLBLGen documentation 可以使用以下代码在 LLBLGen 上使用缓存:
var customers = new EntityCollection<CustomerEntity>();
using(var adapter = new DataAccessAdapter())
{
var parameters = new QueryParameters()
{
CollectionToFetch = customers,
FilterToUse = CustomerFields.Country=="USA",
CacheResultset = true,
CacheDuration = new TimeSpan(0, 0, 10) // cache for 10 seconds
};
adapter.FetchEntityCollection(parameters);
}
但我找不到 class DataAccessAdapter..
你有什么想法、建议来解决我的问题吗?
提前致谢,
如果您创建了一个使用 SelfServicing 的 llblgen 项目,则没有 DataAccessAdapter,因此必须使用 Adapter 选项创建项目。
如果是这样,那么它应该在 xxxx.DatabaseSpecific
其中 xxxx 是您的项目名称。
我正在使用 LLBLGen 5.0 和 EntityCollectionBase.GetMulti(过滤器、关系)来检索 oracle 数据库中的对象。
ObjectCollection objects = new ObjectCollection ();
RelationCollection relationsToUse = new RelationCollection();
relationsToUse.Add(ObjectEntity.Relations.Object2EntityUsingObject2Id);
IPredicateExpression filter = new PredicateExpression(ObjectFields.Code == sectionCode);
objects.GetMulti(filter, relationsToUse);
我想添加缓存系统以避免多次在数据库中进行请求。 我看到 on LLBLGen documentation 可以使用以下代码在 LLBLGen 上使用缓存:
var customers = new EntityCollection<CustomerEntity>();
using(var adapter = new DataAccessAdapter())
{
var parameters = new QueryParameters()
{
CollectionToFetch = customers,
FilterToUse = CustomerFields.Country=="USA",
CacheResultset = true,
CacheDuration = new TimeSpan(0, 0, 10) // cache for 10 seconds
};
adapter.FetchEntityCollection(parameters);
}
但我找不到 class DataAccessAdapter..
你有什么想法、建议来解决我的问题吗?
提前致谢,
如果您创建了一个使用 SelfServicing 的 llblgen 项目,则没有 DataAccessAdapter,因此必须使用 Adapter 选项创建项目。
如果是这样,那么它应该在 xxxx.DatabaseSpecific
其中 xxxx 是您的项目名称。