共享集合VB.NET

时间:2012-04-12 06:09:20

标签: vb.net collections shared

我需要从我的数据库中获取大量数据,并且希望在应用程序启动时获取此数据,将其存储在集合中并在整个应用程序中重用。

我尝试声明一个公共共享集合,并在启动应用程序时填充它(在主窗体中)。它在第一次使用集合时工作正常,但它是空的。

我已经四处寻找我可能写过的地方,以便自己清楚,但无法解决任何问题。任何人有任何想法或提示?

代码如下:

Public Shared m_objDocCollection As Collection(Of clDocumentation)

然后以主要形式

clDocumentation.m_objDocCollection = clDocumentation.GetDocumentsFromDb() 

编辑;抱歉没有添加代码。已复制最相关并放在此处; https://gist.github.com/2365610

1 个答案:

答案 0 :(得分:1)

从您的代码中发现的情况并不明显,但我的猜测是您(重新)多次初始化您的收藏。

在代码中搜索正在(重新)初始化集合的任何地方,例如:

m_objDocCollection = New Collection(Of clDocumentation)

并在这些问题上加上断点。然后运行你的代码,看看它们何时开始。