Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Wcf服务未使用Castle ActiveRecord进行缓存_C#_Mysql_Wcf_Caching_Activerecord - Fatal编程技术网

C# Wcf服务未使用Castle ActiveRecord进行缓存

C# Wcf服务未使用Castle ActiveRecord进行缓存,c#,mysql,wcf,caching,activerecord,C#,Mysql,Wcf,Caching,Activerecord,我使用MySQL数据库和Castle ActiveRecord创建了一个Wcf服务。该服务将从不同的第三方应用程序单独调用多次。我希望Wcf服务缓存所有经常使用的数据,而不是重复访问数据库 我已将Wcf服务设置为作为单个服务器运行 protected void Application_Start(object sender, EventArgs e) { IConfigurationSource oSource = ActiveRecordSectionHandler.Instance

我使用MySQL数据库和Castle ActiveRecord创建了一个Wcf服务。该服务将从不同的第三方应用程序单独调用多次。我希望Wcf服务缓存所有经常使用的数据,而不是重复访问数据库

我已将Wcf服务设置为作为单个服务器运行

protected void Application_Start(object sender, EventArgs e)
{
    IConfigurationSource oSource = ActiveRecordSectionHandler.Instance
    ActiveRecordStarter.Initialize(oSource, typeof(MyObject));
}
然后,在我的一个Wcf方法中,我使用以下方法从ORM检索数据

using (new SessionScope())
{
        List<MyObject> oObjectList = MyObject.FindAll().ToList();
}
使用(新会话范围())
{
List oObjectList=MyObject.FindAll().ToList();
}
我的目标设定如下

[ActiveRecord(Lazy = true)]
public class MyObject : ActiveRecordBase<MyObject >
{
    [PrimaryKey]
    public virtual int Id { get; protected set; }

    [Property]
    public virtual string Name { get; set; }

}
[ActiveRecord(Lazy=true)]
公共类MyObject:ActiveRecordBase
{
[主密钥]
公共虚拟整数Id{get;protected set;}
[物业]
公共虚拟字符串名称{get;set;}
}
我遇到的问题是,在执行简单的读取请求数据时,例如

MyObject.FindAll().ToList())

,每次都会查询数据库,而不是返回缓存数据,因为数据库中的数据是不变的


我哪里出错了…?

您没有在代码中实现任何缓存,对吗?不,目前还没有,我知道ActiveRecord默认会提供一些缓存,我可以使用WCF的一个实例。您曾经尝试过:使用(new SessionScope(FlushAction.Never))是的,我尝试过,但如果我查询数据库,并在查询数据库时调用相同的服务,即使数据保持不变