public async Task QueryTableJoinWithVersionedData() { await ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() => { QueryDef queryDef = new QueryDef { Tables = "CommunityAddress JOIN MunicipalBoundary on CommunityAddress.Municipality = MunicipalBoundary.Name", SubFields = "CommunityAddress.OBJECTID, CommunityAddress.Shape, CommunityAddress.SITEADDID, CommunityAddress.ADDRNUM, CommunityAddress.FULLNAME, CommunityAddress.FULLADDR, CommunityAddress.MUNICIPALITY, MunicipalBoundary.Name, MunicipalBoundary.MUNITYP, MunicipalBoundary.LOCALFIPS", }; using (Geodatabase testVersion1Geodatabase = new Geodatabase(new DatabaseConnectionProperties(EnterpriseDatabaseType.Oracle) { AuthenticationMode = AuthenticationMode.DBMS, Instance = "instance", User = "user", Password = "password", Database = "database", Version = "user.testVersion1" })) { QueryTableDescription queryTableDescription = new QueryTableDescription(queryDef) { Name = "CommunityAddrJounMunicipalBoundr", PrimaryKeys = testVersion1Geodatabase.GetSQLSyntax().QualifyColumnName("CommunityAddress", "OBJECTID") }; // Will be based on testVersion1. using (Table queryTable = testVersion1Geodatabase.OpenQueryTable(queryTableDescription)) { // Use queryTable. } } using (Geodatabase testVersion2Geodatabase = new Geodatabase(new DatabaseConnectionProperties(EnterpriseDatabaseType.Oracle) { AuthenticationMode = AuthenticationMode.DBMS, Instance = "instance", User = "user", Password = "password", Database = "database", Version = "user.testVersion2" })) { QueryTableDescription queryTableDescription = new QueryTableDescription(queryDef) { Name = "CommunityAddrJounMunicipalBoundr", PrimaryKeys = testVersion2Geodatabase.GetSQLSyntax().QualifyColumnName("CommunityAddress", "OBJECTID") }; // Will be based on testVersion2. using (Table queryTable = testVersion2Geodatabase.OpenQueryTable(queryTableDescription)) { // Use queryTable. } } }); }
Target Platforms: Windows 11, Windows 10