相关疑难解决方法(0)

实体框架TypeUsage对象

我在我的应用程序上运行内存分析器以查找可能的内存泄漏.System.Data.Metadata.Edm.TypeUsage对象的数量一直在增长,看起来这可能是我的内存问题的原因.

有没有人知道从内存中释放这些TypeUsatge对象的方法?它们看起来是内部的Entity Framework对象,因为我的代码中没有对它们的任何引用.我已经确认我已将上下文对象包装在一个using块中,并且正在释放内存,但是这种Type用法不想消失.

我们将非常感谢您提供的任何帮助.

c# memory-leaks entity-framework

7
推荐指数
1
解决办法
1179
查看次数

EF Code First Migration会在Azure Web角色上引发StackOverflowException

在Azure Web角色(WS 2012 R2)中执行EF 6.1.2代码首次迁移时会出现此问题.即使我将连接字符串指向(Azure)Sql数据库,相同的迁移也可以在本地运行.

实体框架代码抛出StackOverflowException,我的任何迁移的第一行甚至都没有被击中.

我尝试过以三种不同的方式运行迁移:

DbMigrator migrator = new DbMigrator(configuration);
migrator.Update(); // Here the exception is thrown
Run Code Online (Sandbox Code Playgroud)

第二:

DbMigrator migrator = new DbMigrator(configuration);
pendingMigrations = migrator.GetPendingMigrations().ToList();
foreach (string pendingMigration in pendingMigrations)
{
    migrator.Update(pendingMigration); // Here the exception is thrown
}
Run Code Online (Sandbox Code Playgroud)

并使用web.config:

<contexts>
      <context type="Superb.WorkNextDoor.EFRepository.Context.WndDbContext, Superb.WorkNextDoor.EFRepository, Version=1.0.0.0, Culture=neutral">
        <databaseInitializer type="System.Data.Entity.MigrateDatabaseToLatestVersion`2[[Superb.WorkNextDoor.EFRepository.Context.WndDbContext, Superb.WorkNextDoor.EFRepository], [Superb.WorkNextDoor.EFRepository.Migrations.Migrations.WndDbMigrationsConfiguration, Superb.WorkNextDoor.EFRepository.Migrations]], EntityFramework">
        </databaseInitializer>
      </context>
    </contexts>
Run Code Online (Sandbox Code Playgroud)

我在远程调试Web角色时看到Visual Studio中的StackOverflowException.在Web角色的Windows事件日志中记录错误(此帖子底部的日志信息).

我有两次迁移.我试过从PMC运行第一个,从Web角色运行第二个但没有运气.

我尝试在服务器上安装.Net 4.5.2,将VM大小从XS更改为S并将EF降级到6.1.1版.没有任何效果.此外,我尝试将文件夹"E:\ sites\0"从Web角色下载到我的本地计算机,在IIS上安装应用程序并附加我的VS调试器,它不会抛出该异常.我的Windows 8.1和Windows Server 2012 R2之间必须有所不同.

我花了很多时间尝试不同的东西,但我不想放弃这一点,必须从包管理器控制台执行迁移.

日志名称:应用程序源:应用程序错误日期:
2015年1月11日上午3:21:42事件ID:1000任务类别:(100)级别:
错误关键字:经典用户:N/A计算机:
RD0003FF508F5B描述:错误应用程序名称:w3wp.exe,版本:8.5.9600.16384,时间戳:0x5215df96错误模块名称:clr.dll,版本:4.0.30319.34014,时间戳:0x52e0b86c异常代码:0xc00000fd错误偏移量:0x0000000000195499错误进程id :0xc60错误应用程序启动时间:0x01d02d4d77fdfb93错误应用程序路径:d:\ windows\system32\inetsrv\w3wp.exe错误模块路径:D:\ Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll报告ID:f5e4d6dc -9940-11e4-80bd-0003ff508f5b错误包全名:错误包相关应用程序ID:事件Xml:
1000 2 100 …

stack-overflow entity-framework azure ef-migrations

6
推荐指数
1
解决办法
687
查看次数