我正在开发一个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),以便在方法完成时销毁本地对象?
如果有更好的方法,请提出建议。 请注意,我将要处理的数据将是巨大的。
答案 0 :(得分:2)
问题不应该是关于全局变量和局部变量的问题,而是应该用“保存计算的缓存副本或者根据需要在现场生成它们更好吗?”。
由于您的数据集非常庞大,因此明显按需执行所有计算是不行的,因此该问题很容易回答。