Veel

Hankige kehtetu FeatureClass FeatureDataSet

Hankige kehtetu FeatureClass FeatureDataSet


Mul on projekt, mis parandab katkiseid andmeallikaid. Projekti üks eesmärk on lisada katkiste funktsiooniklasside parandamiseks esiletõstetud andmekogumi andmeallikas. Siiski on siiani ainus viis, kuidas FeatureDataSet'i saada, FeatureClass. Kuna aga need kihid on kehtetud, puudub tunnusklass.

Tavaliselt hoitakse FeatureClassis funktsiooniklassi esiletõstetud andmekogumit. Kas see on siis mujal kättesaadav?

Olen IProperties liideses atribuute juba kontrollinud, kuid sellist õnne pole. Olen proovinud ka IFeatureDatasetit IDatasetist üle kanda, kuid ilmselgelt see ei tööta, kuna kasutan funktsiooniklassi, et jõuda esiletoodud andmekogumini, kust see pärineb, ja see pole esmalt esiletõstetud andmestik.


Esiletoodud andmekogumi objekt ise pole saadaval, kuid selle nimi on saadaval kausta IDataset liidese kaudu kiht (mitte funktsiooniklass). Siin on mõned näidiskoodid, mis annavad teile funktsiooniklassi nimed ja kehtetu kihi esiletõstetud andmekogumi. Või tegelikult suvaline kiht.

var doc = uus MapDocumentClass (); doc.Open (@"d:  temp  untitled.mxd"); IMap kaart = dok.kaart [0]; var andmestik = map.Layer [0] kui IDatasett; Console.WriteLine (andmestik.nimi); var fcn = andmestik. Täisnimi kui IFeatureClassName; // See toimib ilmselgelt ainult funktsioonide kihtide puhul, kui (fcn.FeatureDatasetName! = Null) Console.WriteLine (fcn.FeatureDatasetName.Name); var dsn = andmestik. Täisnimi kui IDatasetName; Console.WriteLine (dsn.WorkspaceName.PathName); // Tööruumi tee, kui see pole SDE andmebaas