IQueryDef и версии

0 голосов
спросил 29 Окт, 09 от -3A- (5,220 баллов) в категории Программные продукты Esri
есть такой код:

IQueryDef qd = ((IFeatureWorkspace)_Workspace).CreateQueryDef();
qd.SubFields = "ID," + _FieldName;
qd.Tables = _TableName;

ICursor cursor = qd.Evaluate();
if (cursor != null)
{
List<ReferenceBookInfo> list = new List<ReferenceBookInfo>();
for (IRow row = cursor.NextRow(); row != null; row = cursor.NextRow())
list.Add(new ReferenceBookInfo((int)row.get_Value(0), (string)row.get_Value(1)));

return list;
}


этот код некорректно работает с версиями в ArcSDE
то есть я читаю данные из одной версии - все ОК
переключаюсь на другую версию (в которой данные отличаются)
снова вызываю данный кусок кода - мне возвращаются данные не текущей версии, а той, что была активной первоначально

где ошибка? в моем коде или где-то в дебрях ArcGIS?
и если ошибка у меня: что я делаю не так?

ps версия ArcGIS Desktop - 9.2 SP5
данные сидят в Personal ArcSDE под SQL Server Express 2005

Пожалуйста, войдите или зарегистрируйтесь для публикации ответа на этот вопрос.

Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...