我正在开发一个silverlight应用程序(c#),其中我使用自定义控件Square
和以下全局变量。
Square[,] arrSquare = new Square[customRows,customColumns]
List<Square> lstSelection;
List<Square> lstEditable;
List<Square> lstSetSquares;
List<Square> lstCancelled;
列表多次用于更新目的。只有当我必须更新上述隔离列表时,arrSquare
才会出现在图片中。
我有两个选择:
遵循我当前的架构,具有全局变量,不使用我的主阵列
arrSquare
频繁在方法中使用
LINQ
(在arrSquare
上转换为局部声明的List
s),以便在方法完成时局部对象被销毁?
如果有更好的方法,请建议。请注意,我将要处理的数据将是巨大的。
这个问题不应该是关于全局变量和局部变量的问题,而应该是"保存计算的缓存副本还是根据需要在现场生成它们更好?"
由于你的数据集将是巨大的,那么显然执行所有的计算需求是不去的,所以这个问题很容易回答。