【发布时间】:2016-12-08 20:43:11
【问题描述】:
我正在构建一个 ASP.NET MVC 5 应用程序,以一次只读访问几条记录(大约在 2 到 12 行之间)。记录存储在 Oracle 11 中,并通过 Entity Framework 6 从 Oracle 中的大型非键控物化视图访问。我已经尝试使用 List、IQueryable 和 IEnumerable 来获取这些记录。 (下例)
public List<FACT> GetCollisionList(string collisionMRN)
{
var collisions = from c in _context.FACT
where c.COLLISION_RECORD_NUMBER.Equals
(DbFunctions.AsNonUnicode(collisionMRN),
StringComparison.OrdinalIgnoreCase)
select c;
return collisions.ToList();
}
每次返回记录大约需要 20 秒。我的问题是: A. 这三种方法中最好的方法是什么? (List, IQueryable, IEnumerable) ------ B. 无键实体化视图是一个根本问题吗? (我在 .NET 数据存储库中有一个模型,它只使用视图包含的 100 多个列中的 8 个)。
【问题讨论】:
标签: asp.net-mvc oracle entity-framework