相关疑难解决方法(0)

每次编译后第一次加载实体框架的速度都很慢

正如标题所示,我在使用实体框架对SQL Server数据库进行第一次查询时遇到问题.我试过寻找答案,但似乎没有人真正找到解决方案.

测试是在使用Entity Framework 6的Visual Studio 2012中完成的,我还使用了T4视图模板来预编译视图.该数据库位于SQL Server 2008上.我们有大约400个POCO(400个映射文件),在数据库表中只有100行数据.

捕获后是我的测试代码和结果.

static void Main(string[] args){
    Stopwatch st=new Stopwatch();
    st.Start();
    new TestDbContext().Set<Table1>.FirstOrDefault();
    st.stop();
    Console.WriteLine("First Time "+st.ElapsedMilliseconds+ " milliseconds");

    st.Reset();
    st.Start();
    new TestDbContext().Set<Table1>.FirstOrDefault();
    st.stop();
    Console.WriteLine("Second Time "+st.ElapsedMilliseconds+ " milliseconds");
}
Run Code Online (Sandbox Code Playgroud)

检测结果

First Time 15480 milliseconds
Second Time 10 milliseconds
Run Code Online (Sandbox Code Playgroud)

c# sql-server entity-framework

43
推荐指数
3
解决办法
4万
查看次数

如何设置IIS以使我的应用程序保持活动状态?

我想我的Web应用程序会在一段时间后关闭.

如果我在5分钟内没有使用该应用程序,它将返回一个新会话.会话超时设置为720分钟,因此不会出现问题.

它可能是应用程序池中的设置还是类似的东西?我认为这是某种资源管理.我使用IIS 7.0

我是一个带服务器的笨蛋,所以如果我在这里错过了明显的话,请耐心等待.

iis-7

12
推荐指数
3
解决办法
2万
查看次数

Entity Framework Core 首次加载缓慢

我正在处理 Entity Framework Core DbContext 预热时间。我有非常大的 DbContext,我正在使用 AddDbContextPool() 选项注册 DbContexes,该选项将 DbContext 注册为单例,应用程序重用它。

在早期版本的 EF 中,为了加快应用程序启动时间,应用了以下解决方法:使用缓存 DbModelStore、生成预编译视图和/或使用 NGen 生成实体框架的预编译版本以避免抖动。

但是,我没有看到在 Entity Framework Core 上应用这些的任何有效方法。我什至找不到任何其他方法来避免 DbContext 的初始启动/蠕虫启动时间。

我们的应用程序的蠕虫启动时间大约为 30+ 秒。

当我的应用程序第一次启动时,我尝试初始化 DbContextes 但这似乎不是一个优雅或事件负担得起的解决方案。

Entity Framework Core 团队 (Github) 上有对编译视图的功能请求,但是此功能没有截止日期。

我需要知道是否有任何我可以应用的解决方法和/或解决方案。

谢谢

c# .net-core asp.net-core ef-core-2.0

5
推荐指数
1
解决办法
3240
查看次数