问题 运行 网速低时的程序(SQL 服务器 CE)

Problems running the program when Internet speed is low (SQL Server CE)

我有一个程序可以与 SQL 服务器 CE 数据库一起使用并通过 EF 连接到它并处理数据。

这个问题是,在程序的主要形式中,当尝试初始化数据库类型并从银行检索数据时,如果用户连接到 Internet 并且用户 Internet 速度很慢,这简单的操作大约需要25到30秒,但是同一个用户如果关掉他们的网络就可以快速的关掉网络。

这段代码写在Form Load应用程序中:

var db = new Entitites();
var count = db.User.Count();

当我运行 VS本身的程序时,随网速、执行速度变化的库是DataAnnotationSystem.Linq

我还在继承自 DbContext

Entities class 中添加了这段代码
public Entities(string connection)
        : base(connection)
    {
        Configuration.LazyLoadingEnabled = false;
        Configuration.AutoDetectChangesEnabled = true;
        Configuration.ProxyCreationEnabled = false;
    }

很可能是由于 Internet 代理配置无效

对于代理配置无效的任何系统上的 SQL Server Compact 4.0,这似乎会发生,因为证书吊销列表检查是 运行 每次加载引擎时(发生在首先调用 .Open())。

解决方案:为避免这种可能会影响系统上任何已签名应用程序的延迟,您必须修复配置或禁用检查

在此处查看我的博客 post:http://erikej.blogspot.com/2013/08/faq-why-is-opening-my-sql-server.html