再现“;SQL表”;在课堂上

本文关键字:课堂 SQL 再现 | 更新日期: 2023-09-27 18:26:20

我有一组类CityCountryBorder

每个类都有相互引用:

  • 城市引用父国家
  • 国家引用通过List<City>包含的城市
  • 国家通过List<Country>引用其他边境国家
  • Country引用Border类,在2个Country实例之间共享

我认为上面的问题导致了我正在使用的程序中的一些问题:加载缓慢和内存问题。

我不太清楚到底发生了什么。我一直读到"循环引用"是不好的做法。有没有其他方法可以将类似SQL的类模式映射到常规类?

我真的想避免调用方法public City GetCities(){...},因为每秒可能会有120000个这样的调用。所以我需要这些是cached,而不是动态请求的。


有人有主意吗?

再现“;SQL表”;在课堂上

听起来你用来访问数据库中项目的任何东西都执行了太多的获取,而且到处都是重复的对象。

表中的数据是否足够小,可以完全缓存?如果是这样,您可以在应用程序启动时将所有内容预加载到字典中,然后查询这些字典中的关系。