【问题标题】:how to optimize this part of code如何优化这部分代码
【发布时间】:2017-01-02 11:03:33
【问题描述】:

我想将此代码优化到最低限度。

Dictionary<long, string> developmentRegions = objectset
    .Where(f => f.IsDeleted == false && f.IsApproved == true)
    .OrderBy(o => o.Name)
    .ToDictionary(a => a.Id, a => a.Name);

谁能优化这段代码

【问题讨论】:

  • 为什么是sql-server标签,这是Linq-To-Sql还是Linq-To-Entities
  • 我投票结束这个问题,因为它是关于优化工作代码

标签: sql-server performance optimization linq-to-sql linq-to-entities


【解决方案1】:

您的问题可能是查询结果的顺序。

尝试在 SQL Server 上为 Name 字段创建索引,以便按顺序获取更严重的结果。

CREATE INDEX ixName ON TableWhereNameIsField (NameOfOrderField);  

【讨论】:

    【解决方案2】:

    假设您确实需要从数据库中加载所有这些名称,您无能为力。您可以删除 OrderBy,因为 Dictionary 并不能保证顺序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-15
      • 2016-01-01
      • 2017-07-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多