5

我的团队正在开发一个使用 MVC4 和 .NET 4.5 的 Web 应用程序。一项任务是创建父级下拉列表,该列表将在父级中选择一个值时更新子下拉列表 - 例如,在选择状态时,状态下拉列表将过滤城市的下拉列表。

在我们的其他项目中,我们使用 Ajax 调用 Web 服务或数据库在选择父值时填充子值。在我上面的示例中,选择了明尼苏达州,并且对数据库进行了 Ajax 调用以获取 MN 中的所有城市。我已经阅读了这里的其他帖子和遵循这个概念的教程。

我们团队的一位新开发人员认为上述方法效率低下,最好在页面加载时获取所有城市,将城市作为 Jason 对象存储在 JavaScript 变量中,然后使用 jquery 循环遍历 JavaScript 变量并构建子列表.

有人可以就他们使用的方法给我反馈吗?当我们可能只显示 10 条记录时,我不相信将数千条记录拉入浏览器并存储在客户端上是非常有效的。该开发人员还认为,在 JavaScript 中循环遍历 10000 行 JSON 对象比调用数据库获取 10 行更快。

4

1 回答 1

1

创建您的列表,您可以从 LINQ 调用所有内容。在进行其他调用以实例化之前,请检查要从那里创建的缓存

public IList<Example> GetList(string _state)
{

    IList<Example> cities = new List<Example>();

    Cache cache = HttpContext.Current.Cache;

    if (cache[_state] != null)
        cities = (IList<Example>)cache[_state];

    else
    {
        //Do your calls
        cache.Insert(_state, cities);
    }

    return cities;
}
于 2013-02-22T17:11:18.980 回答