0
我想用一個可以有多達80億個元素的數據網格創建一個表格。我設法使用虛擬館藏來快速處理 - 所以這不是問題。但是,虛擬化集合實現了IList,它使用INT作爲計數值。我的問題是,一旦我擊中了2^32個元素,計數值就變成了INT限制的負值。我能做些什麼來支持我的元素?微軟是否有任何支持使用長期計數?是否有另一個我應該使用沒有限制的集合?創建一個列表類型使用long而不是int來計數
我想用一個可以有多達80億個元素的數據網格創建一個表格。我設法使用虛擬館藏來快速處理 - 所以這不是問題。但是,虛擬化集合實現了IList,它使用INT作爲計數值。我的問題是,一旦我擊中了2^32個元素,計數值就變成了INT限制的負值。我能做些什麼來支持我的元素?微軟是否有任何支持使用長期計數?是否有另一個我應該使用沒有限制的集合?創建一個列表類型使用long而不是int來計數
用途:
var list = new List<Data>()
.. load data ...
long items = list.LongCount()
這應該做的伎倆......如果你的後臺加載數據!
我相信你將不得不重新考慮你的UI相關的架構。 WPF中的所有接口都使用Int32作爲項目計數/當前位置。無論在哪裏使用虛擬或常規集合,您都無法將使用Int64綁定到集合的任何現有數據網格控件用於計數和索引。 您可能想要查看分頁或滑動窗口方法,並顯示一些計算值以模仿Int64計數器和位置。 –