tecrübe:
eğer mxd içerisine oracle üzerinden eklediğin bir geo table ın mevcut ise
ve bu geo table ile yine oracle üzerindeki bir view ı bağlamış isen
hasılı olayı abartmışsan
bi de üstüne tutup 9.2 sp6 ile web.adf yi kullanarak spatial filter yazmışsan
şu kolonları istiyorum kardeşim dahi desen esri seni sallamıyor abicim
kendi kafasına göre kolonları getiriyor, gerçi stabil herseferinde aynı
şükürki, döndürdüğü kolonlar arasında shape varda elimiz ayağımız hepten kesilmiyor
nasıl yol izledim not alalım, elimdeki geo table ın tipi point idi, tuttum ana geo table ile spatial filter dan dönen point lerin koordinatlarını karşılaştırdım
oradan da geo table ın object id lerini çektim.
ESRI.ArcGIS.esriSystem.IAoInitialize arcLicence = new ESRI.ArcGIS.esriSystem.AoInitialize();
arcLicence.Initialize(ESRI.ArcGIS.esriSystem.esriLicenseProductCode.esriLicenseProductCodeArcInfo);
çok önemli bir nokta daha dbconn sırasında
IWorkspaceFactory2 pWorkSpFac = new SdeWorkspaceFactoryClass();
2 ile üretilmeli
public void delFeatureClass()
{
string Server = “localhost”;
string Instance = “esri_sde”;
string DataBase = “”;
string user = “geoUser”;
string password = “Abc12345″;
string FeaName = “geoUser.tabloIsmi”;
IPropertySet pProSet = new PropertySetClass();
IWorkspaceFactory pWorkSpFac = new SdeWorkspaceFactoryClass();
IFeatureWorkspace pFeaWorkSp = null;
IFeatureClass FeaCls = null;
try
{
pProSet = SdeConn(Server, Instance, DataBase, user, password);
if (pProSet != null)
{
pFeaWorkSp = (IFeatureWorkspace)(pWorkSpFac.Open(pProSet, 0));
FeaCls = pFeaWorkSp.OpenFeatureClass(FeaName);
ESRI.ArcGIS.Geodatabase.IDataset pdataset;
pdataset = (ESRI.ArcGIS.Geodatabase.IDataset)FeaCls;
pdataset.Delete();
}
}
catch(Exception etc)
{
Response.Write(etc.Message.ToString());
}
}
private IPropertySet SdeConn(string Server, string Instance, string DataBase, string user, string password)
{
try
{
IPropertySet pProSet = new PropertySetClass();
pProSet.SetProperty(”Server”, Server);
pProSet.SetProperty(”Instance”, Instance);
pProSet.SetProperty(”Database”, DataBase);
pProSet.SetProperty(”user”, user);
pProSet.SetProperty(”PORT”, “5151″);
pProSet.SetProperty(”password”, password);
pProSet.SetProperty(”version”, “SDE.DEFAULT”);
return pProSet;
}
catch
{
return null;
}
}