从前遇到的这种问题,一般是在pFeatureCursor = pFeatureClass.Search(pSpatialfilter, False)这种语句上,只要把光标释放( ESRI.ArcGIS.ADF.ComReleaser.ReleaseCOMObject(pFeatureCursor) )就ok了。
今天特别奇怪,在pFeatureClass.GetFeature(pID)这里出现问题,也没有光标啊,于是我把注意力又重新转移回“不能再打开其他表了”的原始提示上分析,问题就是要素类的表被打开太多次了,最终的解决方案,强制一次垃圾回收。
System.GC.Collect() '强制对所有代进行垃圾回收。
System.GC.WaitForPendingFinalizers() '挂起当前线程,直到处理终结器队列的线程清空该队列为止。
原来系统里有这些代码的,只是以前没有出现错误就把他们伟大的作用忽略了。
http://blog.163.com/lush-123/blog/static/3979337200983113440721/