ArcEngine 图层通过DisplayAnnotation设置标注后无法释放数据库占用(不设置DisplayAnnotation可以正常释放),请问需要怎么设置才能释放掉数据库的占用?
private void Form1_Load(object sender, EventArgs e)
{
IWorkspaceFactory wf = new AccessWorkspaceFactory();
IFeatureWorkspace fws = wf.OpenFromFile(@"C:\Users\ASUS\Desktop\1\不动产数据库成果.mdb", 0) as IFeatureWorkspace;
IFeatureClass f = fws.OpenFeatureClass("ZDJBXX");
IFeatureLayer featLyr = new FeatureLayer();
featLyr.FeatureClass = f;
axMapControl1.AddLayer(featLyr as ILayer);
IGeoFeatureLayer geoLyr = featLyr as IGeoFeatureLayer;
geoLyr.DisplayAnnotation = true;
Marshal.FinalReleaseComObject(fws);
Marshal.FinalReleaseComObject(f);
Marshal.FinalReleaseComObject(featLyr);
}
{
IWorkspaceFactory wf = new AccessWorkspaceFactory();
IFeatureWorkspace fws = wf.OpenFromFile(@"C:\Users\ASUS\Desktop\1\不动产数据库成果.mdb", 0) as IFeatureWorkspace;
IFeatureClass f = fws.OpenFeatureClass("ZDJBXX");
IFeatureLayer featLyr = new FeatureLayer();
featLyr.FeatureClass = f;
axMapControl1.AddLayer(featLyr as ILayer);
IGeoFeatureLayer geoLyr = featLyr as IGeoFeatureLayer;
geoLyr.DisplayAnnotation = true;
Marshal.FinalReleaseComObject(fws);
Marshal.FinalReleaseComObject(f);
Marshal.FinalReleaseComObject(featLyr);
}
0 个回复